-3
我在遇到以下插入查询时遇到问题。INSERT INTO ...在同一个表中选择将生成外键错误
INSERT INTO CM_LABEL_CALENDAR (
label_id,
label_name,
order_seq,
meal_id,
hyperlink
)
SELECT
label_id,
label_name,
order_seq,
(meal_id + 315),
hyperlink
FROM
CM_LABEL_CALENDAR
WHERE
(meal_id BETWEEN '1466' AND '1521');
当我试图执行它,我收到以下错误:
Lookup Error - MySQL Database Error: Cannot add or update a child row: a foreign key constraint fails (
TEST_PBMS
.CM_LABEL_CALENDAR
, CONSTRAINTCM_LABEL_CALENDAR_ibfk_1
FOREIGN KEY (meal_id
) REFERENCESCM_MEAL_CALENDAR
(meal_id
))
我试图寻找一个答案,但没能找到。
您应该了解外键。然后你明白这个问题,并且为将来的SQL使用提供更好的装备。 –
错误表示您有外键问题。在这种情况下,您正在插入的其中一个meal_id在CM_MEAL_CALENDAR表中不存在,并且正在对它进行调整。 – Becuzz
从同一张表中做'insert into .. select ..'通常也是一个非启动器。 – ethrbunny