sql >> Databáze >  >> RDS >> Mysql

Můžete věřit mysql_insert_id?

Ano, můžete.

Funkce je na relaci, ale je také platná pouze pro úplně poslední dotaz.

To znamená, že nikdy nebudete mít jednoho uživatele, který "znečišťuje" last_insert_id jiného, ​​ale nemůžete obnovit insert_id ze dvou vložených položek. Pokud potřebujete provést několik vložení za sebou a nebudete potřebovat ID až později, nastavte je jako proměnné:

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. Zálohujte MySQL Amazon RDS

  2. Spravujte souběžnost transakcí pomocí zámků na serveru SQL Server

  3. Chci načíst celkový počet uživatelů daných ID doporučení v tabulce

  4. Chyba 2006:Server MySQL zmizel pomocí Pythonu, Bottle Microframework a Apache