# 数据库

# 模式:A(a,b,c,d)

# S 强实体:有主关键字,反之弱 W

# 概念模型向逻辑模型转换

# 无属性

# 一、1 对多、S-S、无属性

# 一方关键字进入多方作为外部关键字

# 二、1 对 1、S-S、无属性

# 一对一关系需要自己把支配角色设置(在概念模型中修改)

# 支配方关键字进入对方做外部关键字

# 三、1,1 对 1,1 报错直接改为 1,1 对 0,1,直接把 1,1 关键字放到 0,1 中

# 四、0,1 对 0,1 多的进少的,受限更加少的管理受限更加多的 (1,1 受限少于 0,1)

# 五、多对多、S-S、无属性

# 左右两边强实体生成一个弱实体(为多),强实体主关键字进入做外部关键字(类似 1 对多)

# 六、1 对多、S-W、无属性

# 强进弱,作为主关键字和外部关键字

# 七、多对多、S-W、无属性

# 无支配关系

# 八、1,1 对 0,1,S-W、无属性

# 1,1 强,强支配弱

# 九、1,1 对 1,1,S-W、无属性

# 报错直接改为 1,1 对 0,1,直接把 1,1 关键字放到 0,1 中

# 十、0,1 对 0,1,S-W、无属性,无此种情况

# 有属性

# 一、1 对多,S-S,有属性

# 将 1 多属性反转,1 进入多作为外部关键字,或者,多进入 1 作为外部关键字

# 二、多对多和 0,1 对 0,1、S-W、有属性

# 无此种情况

# 三、多对多、S-S、有属性

# 左右两边强实体生成一个弱实体(为多),强实体主关键字进入做外部关键字(类似 1 对多),保留属性

# 四、1 对 1

# (一)1,1 对 1,1,S-S,有属性

# 报警,转第二种情况

# (二)0,1 对 1,1,S-S,有属性

# 有属性转化成无属性

# 1,1 进 0,1,1,1 为强,关系产生一个弱实体,右端变为 1,1,1,1 报错,可以改成 1,1,0,1,也可以进行合并(强弱),直接在强中把弱实体加入成为一列。

# (三)0,1 对 0,1,S-S,有属性

# 0,1 对 0,1 多的进少的,如果列数很多,直接产生弱实体

# 五、S-W,有属性

# 递归(自己☞自己)不存在 S-W

# 一、1 对多,S-S,无属性

# 关键字进入自己作为外部关键字,并且重新起名字

# 二、1 对 1,S-S,无属性

# 1,1 对 1,1 报警,1,1 对 0,1 报警,

# 0,1 对 0,1 设置支配角色后,关键字进入自己作为外部关键字,并且重新起名字

# 三、多对多,S-S,无属性

# 关系成为实体,向其中进两次(关键字进入自己作为外部关键字,并且重新起名字)成为 1 对多

# 四、多对多,S-S,有属性

# 规律同有属性,加上属性即可

# 五、1 对 1,S-S,有属性

# 1,1 对 1,1 报警

# 1,1 对 0,1 改为 0,1 对 0,1 或者将关系加入实体成为一列

更新于 阅读次数