舉個例子,說我有這些表...MySQL的觸發與SELECT語句
人(ID,currentyear)
personteam(ID,工作年,隊)
一個人是每一年他們都在一家公司工作。 'personteam'存儲了團隊的記錄。只有'person'中的'currentyear'字段等於'personteam'中的'workyear'時,才允許插入「personteam」。
我想根據PERSON中存儲的內容,在用戶插入到PERSON_TEAM時執行一些檢查。所以我正在用select語句寫一個觸發器。我不是在MySQL的語法確保100%的觸發,所以希望這是有道理的......
CREATE TRIGGER mytesttrigger BEFORE INSERT ON personteam
FOR EACH ROW
SELECT currentyear AS @variablename FROM person p WHERE p.id = NEW.id IF @variablename != NEW.workyear ERROR
END
任何人都可以爲這樣的操作提供一個修正,更正的語法嗎?
謝謝。
(這個例子是微不足道的,所以我可以學到請原諒如何無意義聽起來可能)
現在假設...... FOR EACH ROW BEGIN SET @variablename =(SELECT currentyear由人P其中p.id = NEW.id); IF @variablename!= NEW.workyear THEN ERROR; ENDIF; END; – ajr 2009-10-28 23:10:42