0
我從表ItemBorrower創建一個觸發器,用於更新表項中的字段。當ItemBorrower獲取插入的新條目時,Item表中的currentDate字段應該更新爲今天的日期。這裏是我的觸發器:如何更正MySQL「BEFORE INSERT」觸發器的語法?
CREATE TRIGGER checkoutItem BEFORE INSERT ON ItemBorrower
FOR EACH ROW UPDATE Item
BEGIN
SET Item.checkoutDate = CURDATE()
WHERE NEW.itemID = Item.itemID
END;
而且有錯誤,我得到的是,最後一行:
您的SQL語法錯誤;檢查 對應於你的MySQL服務器版本在第8行
我用分隔符各地播放(刪除它使用 附近「END」正確的語法手冊,加入了「;」項目後, .itemID),但沒有明顯的效用。可能是因爲我做的那件事完全錯了。
任何幫助表示讚賞!
感謝,
喬納
像。 A.魅力。爲了確保我理解發生了什麼,NEW應該與正在創建的實際新的itemID一致,並且由於SET和WHERE與UPDATE項對應,「WHERE itemID」已經知道「itemID」引用了Item表。我對嗎?非常感謝! – Jona 2014-11-23 20:47:04
NEW.itemID引用添加ItemBorrower.itemID的行。左引用item.itemID上的itemID。 – Jaylen 2014-11-23 21:08:04