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