我正在使用 PDO::prepare() 来准备 INSERT 语句。PDO::execute() 返回 true,$dbh->lastInsertId() 总是有下一个 id,但实际上没有插入任何行!
这可能是什么原因造成的?
如果$dbh->lastInsertId()
从该插入返回 id(即没有触发其他插入),则该行显然已插入。仔细检查你的桌子。我是认真的。
我要在这里暗中刺伤,打赌你后来没有逃跑$dbh->commit()
。如果没有提交,一旦脚本结束或连接关闭,它将回滚更改。
另请参阅:事务和自动提交