MySQL :: MySQL 8.0 Reference Manual :: 1.7.3.1 PRIMARY KEY och UNIQUE Index Constraints
1.7.3.1 PRIMARY KEY och UNIQUE Index Constraints
Normalt uppstår fel för dataändringsförklaringar (t.ex. INSERT
eller UPDATE
) som skulle bryta mot primärnyckel-, uniktnyckel- eller främmande nyckelbegränsningar. Om du använder en transaktionslagringsmotor som InnoDB
rullar MySQL automatiskt tillbaka uttalandet. Om du använder en icke-transaktionell lagringsmotor slutar MySQL att bearbeta uttalandet vid den rad för vilken felet inträffade och lämnar alla återstående rader obearbetade.
MySQL stöder ett IGNORE
-nyckelord för INSERT
UPDATE
och så vidare. Om du använder det ignorerar MySQL kränkningar av primära nycklar eller unika nycklar och fortsätter bearbetningen med nästa rad. Se avsnittet för det uttalande som du använder (avsnitt 13.2.6, ”INSERT Statement”, avsnitt 13.2.13, ”UPDATE Statement” och så vidare).
Du kan få information om antalet rader som faktiskt har lagts in eller uppdaterats med funktionen mysql_info()
C API. Du kan också använda SHOW WARNINGS
-angivelsen. Se mysql_info() och Avsnitt 13.7.7.7.42, ”SHOW WARNINGS Statement”.
InnoDB
och NDB
tabeller har stöd för utländska nycklar. Se avsnitt 1.7.3.2, ”Restriktioner för FOREIGN KEY”.