加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 数据库:如何区分“一个或多个”和“零或多”关系?

发布时间:2020-12-12 08:44:12 所属栏目:MsSql教程 来源:网络整理
导读:设计工具可以区分“一到零或更多”和“一对一”的关系.我可以想象如何实现“一个零或更多”的关系: CHILD_TABLE (pk)chid_id (fk)parent_id(必需) PARENT_TABLE (pk)parent_id 如何实现“一对一”的关系?如何说,父母至少需要一个孩子?或者是“一个或多个”
设计工具可以区分“一到零或更多”和“一对一”的关系.我可以想象如何实现“一个零或更多”的关系:

CHILD_TABLE

(pk)chid_id
(fk)parent_id(必需)

PARENT_TABLE

(pk)parent_id

如何实现“一对一”的关系?如何说,父母至少需要一个孩子?或者是“一个或多个”通常实现为“零或多”?

解决方法

通过业务逻辑或至少使用交易来实现1对1或更多的关系.您不能同时插入两个表中;一次插入一张表.因此,您需要插入父级才能插入子级,并且没有内置的方式来使数据库强制执行所需的逻辑.

如果将事务中的两个INSERT语句包装在一起,则保证子插入失败,父插入将被回滚.但是,由业务逻辑来确保没有子进程插入父进程.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读