sql >> Databasteknik >  >> RDS >> Mysql

LAST_INSERT_ID() MySQL

Du kan lagra det senaste infognings-id:t i en variabel :

INSERT INTO table1 (title,userid) VALUES ('test', 1); 
SET @last_id_in_table1 = LAST_INSERT_ID();
INSERT INTO table2 (parentid,otherid,userid) VALUES (@last_id_in_table1, 4, 1);    

Eller hämta max-id från tabell1 (EDIT:Varning. Se notering i kommentarer från Rob Starling om möjliga fel från tävlingsförhållanden när du använder max-id)

INSERT INTO table1 (title,userid) VALUES ('test', 1); 
INSERT INTO table2 (parentid,otherid,userid) VALUES (LAST_INSERT_ID(), 4, 1); 
SELECT MAX(id) FROM table1;  

(Varning:som Rob Starling påpekar i



  1. SQL Server Databas Snapshots -4

  2. Python:använd mysqldb för att importera en MySQL-tabell som en ordbok?

  3. Mer om introduktion av tidszoner i långlivade projekt

  4. Kan jag lägga till en UNIK begränsning till en PostgreSQL-tabell efter att den redan har skapats?