sql >> Base de Datos >  >> RDS >> Mysql

comprobar si hay datos duplicados antes de insertar

Si quieres DutyName y volNric para tener valores únicos, hágalo con una restricción/índice único:

create index idx_assignrequests_dutyname_volnric on assignrequests(dutyname, volnric);

Luego, cuando hagas insert , puedes dejar que falle. O simplemente puede ignorarlo usando on duplicate key update :

INSERT into assignrequests(reqId, dutyName, volNric)"
    VALUES ('" + id + "','" + dutyName + "','" + volNric + "')
    ON DUPLICATE KEY UPDATE dutyName = VALUES(dutyName);

La columna que se actualiza se establece en sí misma, por lo que la operación no hace nada.