MySQL :: Manual de Referência do MySQL 8.0 :: 1.7.3.1 PRIMARY KEY and UNIQUE Index Constraints

1.7.3.1 CONTRATOS PRIMÁRIOS-CHAVE e ÍNDICE ÚNICO

Normalmente, ocorrem erros nas declarações de mudança de dados (tais como INSERT ou UPDATE) que violariam as restrições de chave primária, chave única ou chave estrangeira. Se você estiver usando um mecanismo de armazenamento transacional como InnoDB, o MySQL automaticamente reverte a declaração. Se você estiver usando um mecanismo de armazenamento não transacional, o MySQL pára de processar a declaração na linha para a qual o erro ocorreu e deixa quaisquer linhas restantes não processadas.

MySQL suporta um IGNORE palavra-chave para INSERTUPDATE, e assim por diante. Se você utilizá-lo, o MySQL ignora violações de teclas primárias ou únicas e continua o processamento com a próxima linha. Veja a seção para a declaração que você está usando (Seção 13.2.6, “INSERT Statement”, Seção 13.2.13, “UPDATE Statement”, e assim por diante).

Você pode obter informações sobre o número de linhas realmente inseridas ou atualizadas com a função mysql_info() C API. Você também pode usar a instrução SHOW WARNINGS. Veja mysql_info(), e Secção 13.7.7.42, “Declaração SHOW WARNINGS”.

InnoDB e NDB tabelas suportam chaves estrangeiras. Veja Seção 1.7.3.2, “Restrições de Chaves Estrangeiras”.