首页 > 数据库技术 > 详细

mysql返回自增id

时间:2019-06-17 15:25:57      阅读:114      评论:0      收藏:0      [点我收藏+]

在mysql操作中执行insert,是没有自增id返回的,这就对于后续编写逻辑造成了很大不便。

其实有几种方法可以做到insert后直接获取到自增id。

1.执行select max(id);

  原理是直接查找数据库的最大id,坏处:一旦并发量大、数据量多时就会出现性能低、查找错误的情况。

2.执行selsct LAST_INSERT_ID();

  原理是因为LAST_INSERT_ID是基于Connection的,只要每个线程都使用独立的Connection对象,LAST_INSERT_ID函数 将返回该Connection对AUTO_INCREMENT列最新的insert or update*操作生成的第一个record的ID。这个值不会被其它客户端(Connection)影响,保证了你能够找回自己的 ID 而不用担心其它客户端的活动,而且不需要加锁。使用单INSERT语句插入多条记录,  LAST_INSERT_ID返回一个列表。

  要注意的是,当你执行多个insert时,它会返回第一个自增id。

参考:

  https://www.cnblogs.com/duanxz/p/3862356.html

 

mysql返回自增id

原文:https://www.cnblogs.com/two-bees/p/11039454.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!