我做了这个触发器:
ALTER TRIGGER "isok" AFTER INSERT ORDER 1 ON "dba"."orderz" REFERENCING NEW AS N FOR EACH STATEMENT BEGIN INSERT INTO comments (order_id,user_id,com_content) VALUES (N.order_id,1,'OK'); END
并且SQL Anywhere在保存时没有显示错误,但是当我想在orderz
表中插入内容时,它确实出现了错误:
未找到相关名称“N”
我的代码可能不对,但我搜索了触发器,我不知道如何解决问题。我想要做的就是在comments
表格中创建一个新行,其中包含新订单ID
。
有人可以告诉我如何编写一个涵盖它的表达式吗?
答案 0 :(得分:1)
您需要替换
FOR EACH STATEMENT
与
FOR EACH ROW
如果您使用STATEMENT
,则不会引用任何行,因为即使您一次插入十行,触发器也只会触发一次。