sql >> Database teknologi >  >> RDS >> Mysql

Kan du stole på mysql_insert_id?

Ja, det kan du.

Funktionen er per-session, men den er også kun gyldig for den allersidste forespørgsel.

Det vil sige, at du aldrig vil have en bruger, der "forurener" sidste_insert_id af en anden, men du kan ikke gendanne et insert_id fra to indsættelser siden. Når du skal lave flere indsættelser i træk og ikke har brug for id'erne før senere, skal du indstille dem som variable:

INSERT INTO ...
SET @foo_id = LAST_INSERT_ID();
INSERT INTO ...
SET @bar_id = LAST_INSERT_ID();
INSERT INTO some_join_table VALUES (@foo_id, @bar_id);



  1. MariaDB JSON_EXTRACT() Forklaret

  2. Henter mysql-resultatet af elementopdatering

  3. mongoDB vs mySQL -- hvorfor en er bedre end en anden i nogle aspekter

  4. Skift PostgreSql-databasekodning