我只想在另一个表中存在父级时插入一行.
thread1表
id | content |
1 | Hello World |
2 | Bye World |
thread2表
id | content |
1 | Naruto |
2 | DragonBallz|
评论表
id | thread_id| thread_type | content |
1 | 1 | thread1 | hellow |
2 | 1 | thread2 | bye-bye |
现在,如果我这样做
INSERT INTO comment(thread_id,thread_type,content)VALUES('3','thread2','Whatever');
它应该失败,因为thread2表中不存在3.
这可以通过检查线程表来实现.但没有它可能吗?没有做额外的查询?
更新
上表已更新. thread_type指的是表thread1&线程2
解决方法:
在两个表之间创建一个外键,使用thread(id)作为父项,使用comment(thread_id)作为子项,应该可以解决问题.
这是你应该运行的命令 –
ALTER TABLE comment
ADD FOREIGN KEY
(thread_id)
REFERENCES thread (id)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。