【发布时间】:2014-06-13 10:20:08
【问题描述】:
我有两个表:用户和管理员。
+-------------------------+
| TABLE : user
+-------------------------+
| id: PRIMARY_KEY
| username
| password
+-------------------------+
+-------------------------+
| TABLE: admin
+-------------------------+
| user_id: FOREIGN_KEY
| e-mail
+-------------------------+
管理员也是用户,因此,两个表的关系是 1:1。当从 User 表中删除一行时,它也会从表 Admin 中删除(在 admin.user_id 设置关系 ON DELETE CASCADE),但是如果我从表 Admin 中删除一行怎么办?然后它不会从 User 表中删除,这会在数据库中造成混乱。这是任何解决方案吗?如何实现双方的关系?
【问题讨论】:
标签: mysql relational-database relationship one-to-one cascading-deletes