1.6.3.1 Ограничения PRIMARY KEY и UNIQUE Index
Обычно ошибки возникают для операторов изменения данных (таких как INSERT или UPDATE), которые нарушают ограничения первичного ключа, уникального ключа или внешнего ключа. Если вы используете движок транзакционной базы данных, например, InnoDB, MySQL автоматически отменяет оператор. Если вы используете движок нетранзакционной базы данных, MySQL прекращает обработку оператора на строке, в которой произошла ошибка, и оставляет остальные строки необработанными.
MySQL поддерживает ключевое слово IGNORE для INSERT, UPDATE и так далее. Если вы его используете, MySQL игнорирует нарушения первичного ключа или уникального ключа и продолжает обработку со следующей строкой. См. раздел для используемого вами оператора (Раздел 13.2.5, «Оператор INSERT», Раздел 13.2.11, «Оператор UPDATE» и так далее).
Вы можете получить информацию о количестве строк, фактически вставленных или обновлённых, с помощью функции C API. Вы также можете использовать оператор SHOW
WARNINGS. См. , и Раздел 13.7.5.40, «Оператор SHOW WARNINGS».
InnoDB и NDB таблицы поддерживают внешние ключи. См. Раздел 1.6.3.2, «Ограничения FOREIGN KEY».
© 2025 Oracle
Licensed under the GPLv2 License.