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

automatický přírůstek primární zanechává mezery v počítání

Toto je záměrné a bude se to dít vždy.

Proč?

Vezměme si 2 překrývající se transakce, které provádějí INSERTy

  • Transakce 1 provede INSERT, získá hodnotu (řekněme 42), udělá více práce
  • Transakce 2 provede INSERT, získá hodnotu 43, udělá více práce

Potom

  • Transakce 1 se nezdařila. Vrátí se zpět. 42 zůstává nevyužit
  • Transakce 2 je dokončena s 43

Pokud by byly zaručeny po sobě jdoucí hodnoty, každá transakce by musela proběhnout jedna po druhé. Není příliš škálovatelné.

Viz také Dostávají vložené záznamy vždy souvislou identitu Hodnoty (SQL Server, ale platí stejný princip)



  1. Oracle Shutdown error ORA-01033

  2. ORACLE Po spuštění aktualizace:vyřešení chyby mutující tabulky ORA-04091

  3. Jak se vyhnout substituci proměnných v Oracle SQL Developer s „trinidad &tobago“

  4. MYSQL ORDER BY CASE Problém