Mega Code Archive

 
Categories / MySQL Tutorial / Table
 

For a multiple-row insert, LAST_INSERT_ID() returns the AUTO_INCREMENT key from the first of the inserted rows

mysql> mysql> CREATE TABLE employee (     ->      id MEDIUMINT NOT NULL AUTO_INCREMENT,     ->      name CHAR(30) NOT NULL,     ->      PRIMARY KEY (id)     ->  ); Query OK, 0 rows affected (0.03 sec) mysql> mysql> INSERT INTO employee (name) VALUES ('A'),     ->                                    ('B'),     ->                                    ('C'),     ->                                    ('D'),     ->                                    ('E'),     ->                                    ('F'); Query OK, 6 rows affected (0.00 sec) Records: 6  Duplicates: 0  Warnings: 0 mysql> mysql> SELECT * FROM employee; +----+------+ | id | name | +----+------+ |  1 | A    | |  2 | B    | |  3 | C    | |  4 | D    | |  5 | E    | |  6 | F    | +----+------+ 6 rows in set (0.02 sec) mysql> mysql> select LAST_INSERT_ID(); +------------------+ | LAST_INSERT_ID() | +------------------+ |                1 | +------------------+ 1 row in set (0.00 sec) mysql> mysql> drop table employee; Query OK, 0 rows affected (0.01 sec) mysql>