INSERT TRIGGERS SQL。如何在新表中插入后从另一个表中检索值

时间:2018-02-15 08:45:06

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

我是SQL触发器的新手。我目前仍然坚持下面的问题。

我有 3 表 -

  1. 订单

    orderid int(11)AI PK  orderdate date  总计十进制(8,2)

  2. 产品

    productid int(11)AI PK  productname varchar(50)  unit varchar(10)  价格十进制(8,2)

  3. ORDERDETAILS

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

  4. 我在订单产品表中都有记录。 orderdetails 表为空,没有记录。

    我想在 orderdetails 上创建一个插入触发器,以自动从产品表中检索价格,并在每次我将其更新为 orderdetails 表时插入像;

    这样的查询

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

    非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

我手头上没有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;//