0
我试图创建触发器给一个值“(从‘订单’)SumBeforeTaxes”。
“SumBeforeTaxes”是itemQuantity(来自'order_item')x price('来自itemsinstock')。
因此,如果某人订购了3件,每件10美元,“SumBeforeTaxes”将为3 x 10(共30件)。同样,如果已经订购了3件商品,每件10美元,2件商品每件15件,“SumBeforeTaxes”应该是3x10 + 2x15(共60件)。
这是我到目前为止尝试的 - 但我不断收到语法错误。我也不确定我的触发器(尽管语法错误)是正确的。
第一次尝试:
CREATE DEFINER = CURRENT_USER TRIGGER `orderdb`.`order_AFTER_INSERT`
AFTER INSERT ON `order_item` FOR EACH ROW
BEGIN
SET getItemPrice = (SELECT Price FROM itemsinstock);
INSERT orderdb.'order'
SET SumBeforeTax = itemQuantity * getItemPrice;
END
第2次尝试:
CREATE DEFINER = CURRENT_USER TRIGGER `orderdb`.`order_AFTER_INSERT`
AFTER INSERT ON `order_item` FOR EACH ROW
BEGIN
SET getItemPrice = (SELECT Price FROM itemsinstock);
INSERT INTO orderdb.'order' (SumBeforeTax) VALUES (new.itemQuantity * getItemPrice);
END
第三尝试:
CREATE DEFINER = CURRENT_USER TRIGGER `orderdb`.`order_AFTER_INSERT`
AFTER INSERT ON `order_item` FOR EACH ROW
BEGIN
declare getItemPrice DOUBLE;
SET getItemPrice = (SELECT Price FROM itemsinstock WHERE ItemID = new.itemID);
INSERT INTO orderdb.'order'(SumBeforeTax) VALUES (itemQuantity * getItemPrice);
END
我能在这一个小的帮助?
itemQuantity是从表“order_item”。底部一个:) 我刚刚添加了''来订购,但我仍然得到一个语法错误。我会尝试访问你刚刚发布的链接:) – Charles
@Charles,如果有帮助,请参阅编辑答案。 – Rahul
啊!这工作:)我看到更新效果更好。非常感谢 :) – Charles