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

Korrekt måde at forhindre duplikerede poster ved hjælp af MySQL eller PHP

Du kan bruge et midlertidigt bord. Få php-appen til at indsætte alt i temp-tabellen, og kald derefter en forespørgsel med denne form for logik.

insert into mainTable 
(field1, field2, etc)
select field1, field2, etc
from tempTable 
where (subquery to check for existing records goes here)

Eller du kan bruge try/catch. Jeg kender ikke php-syntaksen, men da mange andre sprog kan gøre denne slags ting, ville jeg forvente, at php også kunne det.

try
code to insert record
catch
if the error code is the one for duplicate records, do nothing.
if it's something else, handle it accordingly.


  1. Parametrisering af SQL-script

  2. SQL MELLEM-Smarte tips til at scanne efter en række værdier

  3. Viser dato fra databasen PHP

  4. Sådan slettes alle primære nøgler fra alle tabellerne i SQL Server-databasen - SQL Server / TSQL vejledning del 65