举个例子,说我有这些表...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