mysql_insert_id

DB/MySQL 2010. 10. 27. 11:20

mysql_insert_id

(PHP 3, PHP 4, PHP 5)

mysql_insert_id -- 이전의 INSERT 작업으로부터 생성된 ID를 반환

설명

int mysql_insert_id ( [resource link_identifier] )

이전의 INSERT 질의로부터 AUTO_INCREMENT 컬럼에 의해 생성된 ID를 반환한다.

인수 목록

link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_connect() is assumed. If no such link is found, it will try to create one as if mysql_connect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

반환값

성공하면 이전의 INSERT 질의에 의한 AUTO_INCREMENT 컬럼으로부터 생성된 ID를, 이전 질의로부터 AUTO_INCREMENT 값이 생성되지 않았다면, 0을, MySQL 접속이 되지 않은 상태였다면 FALSE를 반환한다.

예제

예 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());
?>

Notes

경고

mysql_insert_id()는 원시(native) MySQL C API 함수인 mysql_insert_id()long형태의 반환값을 PHP의 int로 변환한다. AUTO_INCREMENT 컬럼이 BIGINT이면, mysql_insert_id()에 의해 반환되는 값은 잘못될 것이다. 이경우, MySQL SQL 내부 함수인 LAST_INSERT_ID()를 사용하면 된다.

참고: mysql_insert_id()는 최근 수행한 질의에 대해서 동작하기 때문에, 생성된 값은 질의 직후에 mysql_insert_id()를 호출해야 된다.

참고: MySQL SQL 함수인 LAST_INSERT_ID()는 가장 최근에 생성된 AUTO_INCREMENT 값을 담고 있으며, 질의 간에 지워지지는 않는다. 

[출처] mysql_insert_id|작성자 kdepirate

'DB > MySQL' 카테고리의 다른 글

MSSQL PROC ARRAY  (0) 2012.12.11
MySQL 프로세스 리스트 보기  (0) 2011.04.22
문자 함수(RIGHT, LEFT, SUBSTRING_INDEX, SUBSTRING, UPPER, REVERSE, LTRIM, LENGTH)  (0) 2010.10.27
MySQL 날짜 관련 함수  (0) 2010.09.06
LIKE, BETWEEN, IN  (0) 2010.07.08
: