sql >> Databasteknik >  >> RDS >> Mysql

Knepig MySQL batchfråga

Använd inte kolumner för automatisk inkrementering – förallokera dina referens-id:n innan du infogar. På så sätt kan du använda en bulkinsert och ta bort beroendet.

Uppdatering:

  1. Välj alla befintliga id:n från databasen (helst ett enda val för alla kända data).

  2. Berika data att infoga med alla kända id:n. (beräkna en nyckel för varje objekt, som skulle motsvara primärnyckeln för din tabell i databasen, använd den för att uppdatera objektet med id från databasen ) - du vill slutligen dela upp data i objekt som du känner till i databasen, och därmed ha ett känt id - och data som inte finns i databasen och därför behöver en nyckelallokering. Jag antar att din tabell har en primärnyckel som inte bara är id - annars hur skulle databasen kunna veta att du redan har data i databasen.

  3. Tilldela nya id:n till alla poster utan id.

  4. bulk ersätt data i databasen ( infogar flera rader med en enda sats ).



  1. Hur man gör en inre join på radnummer i sql-server

  2. PHP OOP-problem med databasen

  3. Enkel säkerhetskopiering och återställning för mysql-databas från Java

  4. Gå med och multipla och villkor