如果我使用php和mysqli_*函数执行存储过程的插入查询,是否有办法检索自增id字段的值?mysqli->insert_id似乎不起作用。
mysqli->insert_id
是正确的答案:在插入操作之后,您可以在存储过程中添加此语句:
SET @saved_id = LAST_INSERT_ID()
在调用该存储过程后,执行此查询:
SELECT @saved_id
mysqli->insert_id
(其中mysqli
代表您的数据库连接)必须在插入后直接使用。如果在尝试读取insert_id
之前在同一连接上运行其他查询,则会返回0。