Я только изучаю PHP/MySQL и столкнулся с этим. Я просмотрел stackoverflow, но не нашел ничего, что помогло бы мне решить проблему.
Я получаю сообщение SQLSTATE[23000]: нарушение ограничения целостности: 1451 Невозможно удалить или обновить родительскую строку: a Ограничение внешнего ключа не выполнено (evifs_aqqbo.aq_customers, CONSTRAINT fk_cust_proj ВНЕШНИЙ КЛЮЧ (project_id) ССЫЛКИ aq_project (project_id) ПРИ УДАЛЕНИИ КАСКАДА) при вставке новой записи в таблицу aq_project.
таблица aq_project:
CREATE TABLE `aq_project` ( `project_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `status` enum('Active','Inactive') CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL, `jobref` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `jobref_code` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `project_name` varchar(75) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL, PRIMARY KEY (`project_id`,`jobref_code`), UNIQUE KEY `INDX_jobref_code` (`jobref_code`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
таблица aq_customers:
```CREATE TABLE aq_customers (
customer_id varchar(50) НАБОР СИМВОЛОВ utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
parent_id int DEFAULT NULL,
customer_address_id varchar(50) НАБОР СИМВОЛОВ utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
project_id varchar(50) НАБОР СИМВОЛОВ utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
jobref_code varchar(20) НАБОР СИМВОЛОВ utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
ПЕРВИЧНЫЙ КЛЮЧ (customer_id,project_id,jobref_code),
CONSTRAINT fk_cust_proj ВНЕШНИЙ КЛЮЧ (project_id) ССЫЛКИ aq_project (project_id) ПРИ УДАЛЕНИИ КАСКАДА,
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
aq_customers references aq_project so I don't understand why I can't insert the record in the parent table without throwing this violation. The fk in aq_customers is used to cascade deletion of the project records from aq_customers when a project is deleted from aq_project.
Thank you.
Подробнее здесь: https://stackoverflow.com/questions/792 ... rent-table
Вставка нарушения ограничения MySQL в родительскую таблицу ⇐ Php
Кемеровские программисты php общаются здесь
-
Anonymous
1734005661
Anonymous
Я только изучаю PHP/MySQL и столкнулся с этим. Я просмотрел stackoverflow, но не нашел ничего, что помогло бы мне решить проблему.
Я получаю сообщение SQLSTATE[23000]: нарушение ограничения целостности: 1451 Невозможно удалить или обновить родительскую строку: a Ограничение внешнего ключа не выполнено (evifs_aqqbo.aq_customers, CONSTRAINT fk_cust_proj ВНЕШНИЙ КЛЮЧ (project_id) ССЫЛКИ aq_project (project_id) ПРИ УДАЛЕНИИ КАСКАДА) при вставке новой записи в таблицу aq_project.
таблица aq_project:
CREATE TABLE `aq_project` ( `project_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `status` enum('Active','Inactive') CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL, `jobref` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `jobref_code` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `project_name` varchar(75) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL, PRIMARY KEY (`project_id`,`jobref_code`), UNIQUE KEY `INDX_jobref_code` (`jobref_code`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
таблица aq_customers:
```CREATE TABLE aq_customers (
customer_id varchar(50) НАБОР СИМВОЛОВ utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
parent_id int DEFAULT NULL,
customer_address_id varchar(50) НАБОР СИМВОЛОВ utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
project_id varchar(50) НАБОР СИМВОЛОВ utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
jobref_code varchar(20) НАБОР СИМВОЛОВ utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
ПЕРВИЧНЫЙ КЛЮЧ (customer_id,project_id,jobref_code),
CONSTRAINT fk_cust_proj ВНЕШНИЙ КЛЮЧ (project_id) ССЫЛКИ aq_project (project_id) ПРИ УДАЛЕНИИ КАСКАДА,
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
aq_customers references aq_project so I don't understand why I can't insert the record in the parent table without throwing this violation. The fk in aq_customers is used to cascade deletion of the project records from aq_customers when a project is deleted from aq_project.
Thank you.
Подробнее здесь: [url]https://stackoverflow.com/questions/79275064/mysql-constraint-violation-inserting-into-parent-table[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия