집 >데이터 베이스 >MySQL 튜토리얼 >LAST_INSERT_ID()는 MySQL의 여러 레코드 INSERT 문과 어떻게 작동합니까?
여러 레코드 INSERT 문에서 LAST_INSERT_ID() 동작
단일 INSERT 문으로 MySQL 테이블에 여러 레코드를 삽입할 때 LAST_INSERT_ID() 일반적으로 마지막 레코드가 아닌 첫 번째 삽입된 레코드의 ID를 반환합니다.
MySQL 문서에서 확인된 것처럼 이 동작은 INSERT 문이 다른 서버에서 정확하게 재현될 수 있도록 보장합니다. 후속 레코드의 ID 값은 여러 데이터베이스 서버에서 일관되게 할당될 수 없기 때문에 반환되지 않습니다.
예:
다음 INSERT 문을 고려하세요.
INSERT INTO people (name, age) VALUES ('William', 25), ('Bart', 15), ('Mary', 12);
이 명령문을 실행하면 LAST_INSERT_ID()는 처음 삽입된 레코드(William)의 ID인 1을 반환합니다. 이는 예상되는 동작이며 의도하지 않은 결과 없이 명령문이 복제될 수 있도록 보장합니다.
의미:
여러 레코드 삽입을 처리하는 코드에서는 다음 사항에 유의하는 것이 중요합니다. 이 동작을 파악하고 이에 따라 ID 값을 처리합니다. 예를 들어, 삽입된 모든 레코드의 ID를 검색해야 하는 경우 삽입된 행 수를 반환한 다음 개별적으로 ID를 검색하는 등의 다른 접근 방식을 사용해야 할 수 있습니다.
위 내용은 LAST_INSERT_ID()는 MySQL의 여러 레코드 INSERT 문과 어떻게 작동합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!