【问题标题】:INSERT TRIGGERS SQL. How to retrieve value from another table after insert in new table插入触发器 SQL。插入新表后如何从另一个表中检索值
【发布时间】:2018-07-25 23:10:33
【问题描述】:

我是 SQL 触发器的新手。我目前被以下问题困扰。

我有 3 个表格 -

  1. 订单

    orderid int(11) AI PK 订购日期 日期 总计十进制(8,2)

  2. 产品

    productid int(11) AI PK 产品名称 varchar(50) 单位 varchar(10) 价格十进制(8,2)

  3. 订单详情

    orderid int(11) productid int(11) 价格小数(8,2)

我在 orders 和 products 表中都有记录。 orderdetails 表为空,没有记录。

我想在 orderdetails 上创建一个插入触发器,以自动从 products 表中检索价格并将其更新到 orderdetails 表中插入类似的查询;

(例如 INSERT INTO orderdetails(orderid,productid) values(1,1))到 orderdetails 表中。

任何帮助将不胜感激。

【问题讨论】:

    标签: mysql sql triggers mysql-workbench database-trigger


    【解决方案1】:

    我手头没有 MySQL,但这应该可以工作:

    CREATE TRIGGER ins_price BEFORE INSERT ON orderdetails
           FOR EACH ROW
           BEGIN
               SET new.price= (select price from products where productid = new.productid);
           END;//
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-07
      • 1970-01-01
      • 2011-01-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多