Перейти к основному содержимому

Невозможно добавить или обновить дочернюю строку

❌ Ошибка

Cannot add or update a child row: a foreign key constraint fails

📍 Контекст

Происходит при вставке в таблицу с внешним ключом, который ссылается на другую таблицу (например, лицензии, связанные с панелями, склады, связанные с владельцами), но ссылаемая строка не существует.

✅ Решение

  • Сначала вставьте родительскую строку (например, создайте склад перед его назначением).
  • Или отключите строгие проверки, если вам не нужно принуждение внешнего ключа:
    SET FOREIGN_KEY_CHECKS=0;

ℹ️ Дополнительная информация

  • Не все скрипты используют внешние ключи — многие закомментируют их, чтобы избежать проблем.
  • Если вы их включаете, всегда соблюдайте порядок вставки.
  • Для получения дополнительной информации о внешних ключах смотрите документацию MySQL.