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

Hvordan kan jeg indsætte mange rækker i en MySQL-tabel og returnere de nye id'er?

Gammel tråd, men har lige kigget på dette, så her kommer:Hvis du bruger InnoDB på en nyere version af MySQL, kan du få listen over ID'er ved hjælp af LAST_INSERT_ID() og ROW_COUNT() .

InnoDB garanterer sekventielle numre for AUTO INCREMENT, når der udføres masseindsættelser, forudsat innodb_autoinc_lock_mode er sat til 0 (traditionel) eller 1 (konsekutiv). Derfor kan du få den første ID fra LAST_INSERT_ID() og den sidste ved at tilføje ROW_COUNT()-1 .



  1. Sådan gemmer du en dato og klokkeslæt i MySQL med tidszoneoplysninger

  2. Lær grundlæggende dataanalyse med SQL-vinduefunktioner

  3. SQL Server Operativsystem fejl 5:5 (Adgang nægtes.)

  4. DBaaS, cloud og transparent forespørgselsrouting