MySQL LAST_INSERT_ID()

1 개요[ | ]

MySQL LAST_INSERT_ID()
  • 최근 INSERT한 자료의 ID 반환
  • AUTO_INCREMENT에 따라 생성된 최근 ID

2 실습[ | ]

mysql> SELECT * FROM employee;
+----+------------+-----------+
| id | first_name | last_name |
+----+------------+-----------+
|  1 | John       | Smith     |
+----+------------+-----------+
1 row in set (0.00 sec)
mysql> INSERT INTO employee (first_name, last_name) VALUES ('Jane', 'Doe');
Query OK, 1 row affected (0.01 sec)
mysql> SELECT * FROM employee;
+----+------------+-----------+
| id | first_name | last_name |
+----+------------+-----------+
|  1 | John       | Smith     |
|  2 | Jane       | Doe       |
+----+------------+-----------+
2 rows in set (0.01 sec)
mysql> SELECT LAST_INSERT_ID();
+------------------+
| LAST_INSERT_ID() |
+------------------+
|                2 |
+------------------+
1 row in set (0.00 sec)

3 PHP 예시[ | ]

  • mysqli
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'world');
$mysqli->query("INSERT INTO employee (first_name, last_name) VALUES ('Jane', 'Doe')");
echo 'New Record has id ' . $mysqli->insert_id;
  • PDO
$dbh = new PDO('mysql:host=localhost;dbname=world', 'my_user', 'my_password');
$sth = $dbh->prepare("INSERT INTO employee (first_name, last_name) VALUES (?, ?)");
$sth->execute(array('Jane','Doe'));
echo 'New Record has id ' . $dbh->lastInsertId();

4 같이 보기[ | ]

5 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}