mysql_insert_id

(PHP 4, PHP 5)

mysql_insert_id — 마지막 쿼리에서 생성된 ID 가져오기

경고 이 확장은 PHP 5.5.0에서 더 이상 사용되지 않으며 PHP 7.0.0에서 제거되었습니다. 대신 MySQLi 또는 PDO_MySQL 확장을 사용해야 합니다. MySQL: API 선택 가이드도 참조하세요. 이 함수의 대안은 다음과 같습니다.


설명

mysql_insert_id(resource $link_identifier = NULL): int

이전 쿼리(일반적으로 INSERT)에 의해 AUTO_INCREMENT 열에 대해 생성된 ID를 검색합니다.


매개변수

link_identifier
MySQL 연결. 링크 식별자가 지정되지 않으면 mysql_connect()에 의해 열린 마지막 링크가 가정됩니다. 그러한 링크가 발견되지 않으면 mysql_connect()가 인수 없이 호출된 것처럼 링크를 생성하려고 시도합니다. 연결을 찾거나 설정하지 않으면 E_WARNING 수준 오류가 생성됩니다.

반환 값

성공 시 이전 쿼리에 의해 AUTO_INCREMENT 열에 대해 생성된 ID, 이전 쿼리가 AUTO_INCREMENT 값을 생성하지 않으면 0, MySQL 연결이 설정되지 않은 경우 false입니다.


Examples

예제 #1 mysql_insert_id() 예제

                  
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');

mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Last inserted record has id %d\n", mysql_insert_id());
?>
                  
                

노트

주의:

mysql_insert_id()는 기본 MySQL C API 함수 mysql_insert_id()의 반환 유형을 long 유형(PHP에서는 int라고 함)으로 변환합니다. AUTO_INCREMENT 열의 열 유형이 BIGINT(64비트)인 경우 변환으로 인해 잘못된 값이 발생할 수 있습니다. 대신 SQL 쿼리에서 내부 MySQL SQL 함수 LAST_INSERT_ID()를 사용하십시오. PHP의 최대 정수 값에 대한 자세한 내용은 integer 문서를 참조하십시오.

참고:

mysql_insert_id()는 마지막으로 수행된 쿼리에 대해 작동하기 때문에 값을 생성하는 쿼리 직후에 mysql_insert_id()를 호출해야 합니다.

참고:

MySQL SQL 함수 LAST_INSERT_ID()의 값은 항상 가장 최근에 생성된 AUTO_INCREMENT 값을 포함하며 쿼리 간에 재설정되지 않습니다.


기타