Я пытаюсь создать триггер, чтобы дать «SumBeforeTaxes (от„порядка“)» значение.
«SumBeforeTaxes» - itemQuantity (from 'order_item') x price ('from 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
вторая попытка:
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». Bottom one :) Я просто добавил '' на заказ, но я все еще получаю синтаксическую ошибку. Я попробую посетить ссылку, которую вы только что разместили :) – Charles
@Charles, см. Править в ответ, если это помогает. – Rahul
Ahh! Это сработало :) Я вижу, что обновление работает лучше. Большое спасибо :) – Charles