>  기사  >  데이터 베이스  >  mysql에서 자동 증가 열을 검색하는 방법

mysql에서 자동 증가 열을 검색하는 방법

coldplay.xixi
coldplay.xixi원래의
2020-09-28 10:39:202701검색

Mysql에서 자동 증가 열을 검색하는 방법: 1. [select max(id) from tablename]을 사용합니다. 2. [SELECT LAST_INSERT_ID()]를 사용합니다. 3. [select @@IDENTITY]; ].

mysql에서 자동 증가 열을 검색하는 방법

Mysql에서 자동 증가 열을 검색하는 방법:

1, select max(id) from tablenameselect max(id) from tablename

2、SELECT LAST_INSERT_ID()

LAST_INSERT_ID 是与table无关的,如果向表a插入数据后,再向表b插入数据,LAST_INSERT_ID会改变。

在多用户交替插入数据的情况下max(id)显然不能用。这时就该使用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返回一个列表。

3、select @@IDENTITY;

@@identity 是表示的是最近一次向具有identity属性(即自增列)的表插入数据时对应的自增列的值,是系统定义的全局变量。一般系统定义的全局变量都是以@@开头,用户自定义变量以@开头。

比如有个表A,它的自增列是id,当向A表插入一行数据后,如果插入数据后自增列的值自动增加至101,则通过select @@identity得到的值就是101。使用@@identity的前提是在进行insert操作后,执行select @@identity的时候连接没有关闭,否则得到的将是NULL值。

4、SHOW TABLE STATUS;

2, SELECT LAST_INSERT_ID()

LAST_INSERT_ID는 테이블과 아무런 관련이 없습니다. 테이블 a에 데이터를 삽입한 후 테이블 b에 데이터를 삽입하면 LAST_INSERT_ID가 변경됩니다.

Max(id)는 여러 사용자가 교대로 데이터를 삽입하는 경우에는 사용할 수 없습니다. 이때 LAST_INSERT_ID를 사용할 차례입니다. LAST_INSERT_ID는 Connection을 기반으로 하기 때문입니다. 각 스레드가 독립적인 Connection 개체를 사용하는 한 LAST_INSERT_ID 함수는 해당 스레드의 최신 삽입 또는 업데이트 작업으로 생성된 첫 번째 레코드의 ID를 반환합니다. AUTO_INCREMENT 열에 대한 연결입니다. 이 값은 다른 클라이언트(연결)의 영향을 받을 수 없으므로 다른 클라이언트의 활동에 대해 걱정하지 않고 잠금 없이 자신의 ID를 검색할 수 있습니다. 단일 INSERT 문을 사용하여 여러 레코드를 삽입하면 LAST_INSERT_ID가 목록을 반환합니다. 3. @@IDENTITY 선택;

@@identity는 ID 속성이 있는 테이블에 데이터가 가장 최근에 삽입되었을 때 해당 자동 증가 열의 값을 나타냅니다(예: 자동 증가 열) ) 시스템 정의 전역 변수입니다. 일반적으로 시스템 정의 전역 변수는 @@으로 시작하고, 사용자 정의 변수는 @로 시작합니다. 🎜🎜예를 들어 테이블 A가 있고 자동 증가 열이 id입니다. 테이블 A에 데이터 행을 삽입할 때 데이터 삽입 후 자동 증가 열의 값이 자동으로 101로 증가하면 해당 값은 @@identity 를 선택하여 얻은 값은 101 입니다. @@identity를 사용하기 위한 전제 조건은 삽입 작업을 수행한 후 select @@identity를 실행할 때 연결이 닫히지 않는다는 것입니다. 그렇지 않으면 결과가 NULL 값이 됩니다. 🎜🎜4. SHOW TABLE STATUS;🎜🎜결과적으로 해당 테이블 이름 레코드에 Auto_increment 필드가 있습니다. 그 안에 있는 다음 자동 증가 ID의 값은 현재 최대 auto-increment입니다. 테이블의 증분 ID.🎜🎜🎜관련 무료 학습 권장 사항: 🎜mysql 튜토리얼🎜(동영상)🎜🎜

위 내용은 mysql에서 자동 증가 열을 검색하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.