zoukankan      html  css  js  c++  java
  • mysql返回自增id

    在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

     

  • 相关阅读:
    栈的操作总结
    C语言复习大纲
    生理周期
    石子合并
    幸运数字
    最长&最短文本
    C++引用
    C++入门
    直角三角形
    思维的囚徒--读书摘记和自己的肤浅解读--2021.1
  • 原文地址:https://www.cnblogs.com/two-bees/p/11039454.html
Copyright © 2011-2022 走看看