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 INSERT
UPDATE
, 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”.