우리 모두 알고 있듯이 MySQL LAST_INSERT_ID() 함수는 가장 최근에 생성된 시퀀스 번호를 반환하지만 다중 행 삽입의 경우 맨 앞 삽입된 행에서 생성된 시퀀스 번호를 반환합니다.
mysql> Insert into Student(Name) values('Ram'),('Mohan'),('Aryan'); Query OK, 3 rows affected (0.03 sec) Records: 3 Duplicates: 0 Warnings: 0
위 쿼리는 다중 행 삽입 쿼리를 사용하여 Student 테이블에 세 개의 값을 삽입합니다. "Id" 열의 값은 다음 쿼리를 통해 확인할 수 있습니다. -
mysql> Select * from Student; +----+-------+ | Id | Name | +----+-------+ | 1 | Raman | | 2 | Rahul | | 3 | Ram | | 4 | Mohan | | 5 | Aryan | +----+-------+ 5 rows in set (0.00 sec)
즉, Last_Insert_Id()가 출력으로 5를 반환해야 하지만 아래와 같이 값 3을 반환하는 것을 볼 수 있습니다. -
mysql> Select Last_Insert_Id(); +------------------+ | Last_Insert_Id() | +------------------+ | 3 | +------------------+ 1 row in set (0.00 sec)
반환합니다. 값 3은 3이 위의 다중 행 삽입 쿼리에서 처음 삽입된 행의 값이기 때문입니다.
위 내용은 여러 행을 삽입하는 경우 MySQL LAST_INSERT_ID() 함수의 출력에 어떤 영향을 미치나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!