sql >> Databasteknik >  >> RDS >> Mysql

Undvik dubbletter av ID:n i PHP

Kolumnen måste vara UNIK. Just nu finns det ingen begränsning för kolumnen som tillåter den att ha dubbletter av värden. Ändra kolumnen till UNIK:

ALTER TABLE user_books ADD UNIQUE (bookID);

Den här frågan misslyckas dock om du redan har dubbletter av värden i bookID kolumn. Om du inte bryr dig om (automatisk) borttagning av dubblettposter, använd följande fråga istället:

ALTER IGNORE TABLE user_books ADD UNIQUE (bookID);

Detta kommer att behålla den först hittade posten av eventuella dubbletter och radera resten, dvs. Tänk dig att ha 5 poster med bookID 100. Ovannämnda fråga kommer att behålla den första posten med bookID 100 och radera de återstående 4 automatiskt.

Sedan kan du använda INSERT IGNORE INTO därefter.




  1. 4 tips för att köra SQL Server Diagnostics

  2. mysql auto_increment med 5?

  3. Solve kan inte utföra en DML-operation i en fråga

  4. Hur man dockar/avdockar frågefönster och andra flikar i SQL Server Management Studio (SSMS) - SQL Server/TSQL självstudie del 21