mysql插入自动增长的主键后如何获得该主键的值

解决方案:使用函数  LAST_INSERT_ID()

用法: 如查看最新一次自增得到的id:  select  LAST_INSERT_ID();

问题是解决了,但是会不会存在一个问题:我先使用自增主键的sql语句插入了值,然后就调用 LAST_INSERT_ID()这个函数,但是在这两步之间会不会有其他用户执行另一个有关主键的语句导致我的LAST_INSERT_ID()得到一个错误的值呢?(尤其时当数据库被频繁使用时)那么操作的时候就需要锁住数据库了?

但事实上,LAST_INSERT_ID()不会出现这种错误。他是返回当前用户(client)的最近一次使用auto_increment列返回的主键的值,不会受其他用户的影响。


参考:stackoverflow

猜你喜欢

转载自blog.csdn.net/chent86/article/details/80710138