在MySQL中,我需要知道在BEFORE INSERT
触发器中是否可以找出主键ID(NEW.Id)是否由自动增量值自动生成或者如果ID 手动设置。
原因是在我的应用程序中,行既可以使用set ID插入,也可以依赖于自动增量值,但我需要知道这一点。
如果在插入行时保留为空,则在前触发器中NEW.Id的值是多少? 它似乎不是NULL,所以它已经设置为当前的自动增量值? 但是如果发现这种情况怎么发现?
的更新: 的 似乎BEFORE INSERT触发器中的整数类型主键(NEW.Id)的值为0(非NULL!),即使没有为此列设置默认值。
答案 0 :(得分:0)
你需要把触发器放在AFTER
选项上,而不是你最后一次返回ID,如果你把触发器放在BEFORE
选项上,执行的操作会给你零值,因为没有任何价值。