mysql - 在带有变量的 MySQL 表上触发?

标签 mysql sql

我需要在 MySQL 触发器中创建这样的架构:

邮件

  • oid ID
  • varchar 名称
  • varchar 引用

地址邮件

  • oid ID
  • oid id_mail
  • oid id_地址

地址

  • oid ID
  • varchar 名称

将某些内容插入到 adress_mail 后,它会更新“mail.reference”,其值类似于每个“adress.name”:

我使用 (1,5,6) 和 (1,5,7) 插入 adress_mail,因此触发器将使用“adress.name where adress.id = 6”和“adress.reference”中的值更新“mail.reference”。名称,其中 adress.id = 7'

Q: The whole problem is how to loop on adress_mail table and get all 'adress.name' in 1 varchar and then just update 'mail.reference' with that value?

我可以在触发器中设置诸如 var (变量)之类的东西,然后从 select 收集所有结果?

PS 'mail.reference' 它是 varchar 行,以改进应用程序的某些搜索功能,因为我无法在 'adress_mail' 表上循环。

最佳答案

只是不要这样做!您正在使用 SQL 数据库,它的主要思想是表关系,因此当您必须从链接到邮件的地址查找数据时,请在 address_mail 上执行带有联接的选择。

关于mysql - 在带有变量的 MySQL 表上触发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22282055/

相关文章:

sql - 在 SSIS 中获取 OLEDB 连接错误

mysql - 从对象数组中选择某些键

php - 检索和保存数据

mysql - 交叉加入 SQLite 与其他数据库

php - 使用 PHP 和 AJAX 将数据从表单加载到 MySQL

mysql - 使用 mysql 检索地址的最佳方法

MySQL 没有在此查询中使用索引

php - 当数组存在时无法从数组中检索值

php - Arch Linux 上 LAMP 中的 Codeigniter

mysql - SQL for WP 删除具有多个元键和注释的用户