我有一个带有 ID (auto_inc)、名称、...和 customer_code 字段的客户表。该表还有一个“before”触发器,从另一个表中选择一个客户代码,并在向该表中插入新记录之前设置customer_code字段。完美运行。
问题是当我检索 lastInsertID() 它总是返回 1 !
我正在使用 PDO 和 PHP。
谢谢你的帮助!
我有一个带有 ID (auto_inc)、名称、...和 customer_code 字段的客户表。该表还有一个“before”触发器,从另一个表中选择一个客户代码,并在向该表中插入新记录之前设置customer_code字段。完美运行。
问题是当我检索 lastInsertID() 它总是返回 1 !
我正在使用 PDO 和 PHP。
谢谢你的帮助!
您使用的是什么版本的 MySQL?从 5.0.12 开始,最后一个插入 ID 不应被触发器覆盖。但在该版本之前,触发器可能会更改值,后续查询会看到错误的值。
见http://dev.mysql.com/doc/refman/5.0/en/stored-routines-last-insert-id.html