等价于MySQL中的SQLServer函数SCOPE_IDENTITY()??mysql-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

等价于MySQL中的SQLServer函数SCOPE_IDENTITY()??mysql

保持可爱mmm 2020-05-17 12:18:40 51

什么是mySQL 中SQLServer函数SCOPE_IDENTITY()的等效项?

关系型数据库 MySQL
分享到
取消 提交回答
全部回答(1)
  • 保持可爱mmm
    2020-05-17 12:31:40

    这是您要寻找的:

    LAST_INSERT_ID() 为了回应OP的评论,我创建了以下基准测试:

    CREATE TABLE Foo ( FooId INT AUTO_INCREMENT PRIMARY KEY );

    CREATE TABLE Bar ( BarId INT AUTO_INCREMENT PRIMARY KEY );

    INSERT INTO Bar () VALUES (); INSERT INTO Bar () VALUES (); INSERT INTO Bar () VALUES (); INSERT INTO Bar () VALUES (); INSERT INTO Bar () VALUES ();

    CREATE TRIGGER FooTrigger AFTER INSERT ON Foo FOR EACH ROW BEGIN INSERT INTO Bar () VALUES (); END;

    INSERT INTO Foo () VALUES (); SELECT LAST_INSERT_ID(); 返回:

    +------------------+ | LAST_INSERT_ID() | +------------------+ | 1 | +------------------+ 因此,它使用LAST_INSERT_ID()原始表的,而不INSERT使用触发器内部的表。

    编辑:经过所有这些时间,我意识到SELECT LAST_INSERT_ID()答案中显示的结果是错误的,尽管最后的结论是正确的。我已将结果更新为正确的值。来源:stack overflow

    0 0
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

推荐文章
相似问题