sql >> Database >  >> RDS >> Mysql

SQL voorkomt dubbele invoer als er 2 waarden bestaan

U kunt een unieke index/beperking maken voor de kolommen die u uniek wilt maken:

alter table t add constraint unq_t_bburl_addontitle unique t(bburl, addontitle)

Een invoeging op de tafel zal dan een fout genereren. U kunt de fout vermijden met on duplicate key update :

insert into t ( . . . )
    values ( . . . )
    on duplicate key update bburl = values(bburl);

De update doet niets (omdat de waarden al overeenkomen), maar dit voorkomt dat de code een fout retourneert.




  1. Caching van tijdelijke objecten van SQL Server

  2. ORDER DOOR een gelijke waarde in MySQL

  3. Updates voor het JSON-veld blijven niet bestaan ​​in DB

  4. Hoe pgBackRest te gebruiken om een ​​back-up te maken van PostgreSQL en TimescaleDB