2列指向同一个外部字段
2 columns pointing to the same foreign field
我有一个 mySQL table messages
,其中包含以下字段:id
、parent
、profesor
、message
.
parent
和 profesor
都是用户,存储在 user
table (id
, name
, last name
)
所以我在 phpMyAdmin 中创建了 table 然后我写道:
alter table messaged add foreign key (profesor) references user (id)
并且工作完美!
当我对 parent 执行相同操作时,出现此错误:
#1452 - Cannot add or update a child row: a foreign key constraint fails (`school`.`#sql-1e30_fe`, CONSTRAINT `#sql-1e30_fe_ibfk_2` FOREIGN KEY (`parent`) REFERENCES `user` (`id`))
我做错了什么?
'messages'table有数据吗?如果是这样,所有 messages.parent 字段都应填写相应的 user.id 值,否则会出现此错误。
您可以使用此查询检查不限制行:
SELECT id, parent FROM messages WHERE parent NOT IN
(SELECT id FROM user)
我有一个 mySQL table messages
,其中包含以下字段:id
、parent
、profesor
、message
.
parent
和 profesor
都是用户,存储在 user
table (id
, name
, last name
)
所以我在 phpMyAdmin 中创建了 table 然后我写道:
alter table messaged add foreign key (profesor) references user (id)
并且工作完美! 当我对 parent 执行相同操作时,出现此错误:
#1452 - Cannot add or update a child row: a foreign key constraint fails (`school`.`#sql-1e30_fe`, CONSTRAINT `#sql-1e30_fe_ibfk_2` FOREIGN KEY (`parent`) REFERENCES `user` (`id`))
我做错了什么?
'messages'table有数据吗?如果是这样,所有 messages.parent 字段都应填写相应的 user.id 值,否则会出现此错误。
您可以使用此查询检查不限制行:
SELECT id, parent FROM messages WHERE parent NOT IN
(SELECT id FROM user)