如果我使用带有php和mysqli _
*函数的存储过程执行插入查询,有没有办法检索自动增量id字段的值?
mysqli->insert_id
似乎不起作用。
答案 0 :(得分:8)
您确定您执行的最后一个查询是INSERT吗?
mysqli->insert_id
似乎是正确答案:
返回值
已更新的
AUTO_INCREMENT
字段的值 通过上一个查询。如果返回零 没有先前的查询 连接或如果查询没有 更新AUTO_INCREMENT
值。
答案 1 :(得分:1)
答案 2 :(得分:1)
您可以在插入后在存储过程中添加此语句:
SET @saved_id = LAST_INSERT_ID()
然后,在调用过程后执行此查询:
SELECT @saved_id
答案 3 :(得分:0)
mysqli->insert_id
(其中mysqli
表示您的数据库连接)
必须在插入后直接使用。如果在同一连接上运行其他查询
在尝试阅读insert_id
之前,你会得到0。