我有以下sql表:
id |电子邮件| fbid
当我执行查询时

 INSERT INTO users(email,fbid) VALUES('randomvalue','otherrandomvalue')

我想得到插入行的id。为此,我尝试按如下方式编辑查询:
 INSERT INTO users(email,fbid) VALUES('randomvalue','otherrandomvalue') OUTPUT Inserted.id

但我得到:
1064-您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以获得正确的语法
在第1行的“OUTPUT Inserted.id”附近
有什么问题吗?

最佳答案

不幸的是(据我所知)mysql不像sql-server那样支持output
对于试图在单行插入中完成的任务,您确实有一个选项(假设自动递增主键):

SELECT LAST_INSERT_ID();

不幸的是,这在批插入的情况下是行不通的——尽管在您的情况下您没有(至少在您的示例中没有),所以这应该是可以的。

关于mysql - 在mysqli中输出Inserted.row,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29149999/

10-10 09:37