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

undgå samtidig indsæt flere samme id i mysql

Du vil bruge en sekvens .

To forbehold:

  • AUTO_INCREMENT Funktionen beskrevet i artiklen er ikke-standard og kan give problemer med overførsel, når du flytter til en anden database.

  • Hvis en INSERT afbrydes, forbruges et tal fra sekvensen stadig, så du kan ende med huller i sekvensen. Hvis det er uacceptabelt, skal du bruge en autogenereret sekvens for den primære (surrogat-) nøgle og tilføje et separat kort fra den nøgle til det "officielle" sekvensnummer, hvilket håndhæver entydighed i tabellens indeks.

Alternativet er at håndhæve UNIQUE ness i databasen, skal du bruge et passende TRANSACTION ISOLATION LEVEL og tilføj applikationslogik for at håndtere fejl ved INSERT .



  1. Oprettelse af en Oracle Database 12c – Trin for trin

  2. Modellering af UUID i Hibernate-entitet mod MySQL

  3. Henter kolonneinformation (sammensat nøgle) i SQL

  4. Hvordan indstilles AUTO_INCREMENT i Laravel med Eloquent?