• ER图转关系模式, 强制参与和选择参与


    首先每个实体对应一个关系

    对于实体间存在的联系,得到映射基数后,还要知道参与联系的实体是强制参与还是选择参与,比如人拥有车的关系,每辆车都有主人,不一定每个人都有车,这里人就是选择参与,车是强制参与

    假设有实体A和B存在联系
    对于1:1的联系
      如果两边都是强制参与,可以将A的主键放到B的关系中或者将B的主键放到A的关系中,不必为这个联系新建一个关系
      如果一边是强制参与,一边是可选参与,则将可选参与一边的主键放到强制参与一边的关系中,不必为这个联系新建一个关系
      如果两边都是可选参与,则要为这个联系新建一个关系,其属性为两边的主键。

    对于1:多的联系
      如果多的一边是强制参与,则将1的一边的主键放到多的一方的关系中,不必为这个联系新建一个关系
      否则,新建一个关系,其属性为两边的主键

    对于多对多的关系
      新建一个关系,其属性为两边的主键

    上面为联系建立的关系不会出现NULL的情况,如果允许NULL,还可以这样

    对于1:1的联系 
      如果两边都是可选参与,也可以将任意一边的主键放到另一边作为一个属性,但该属性有可能为NULL

    对于1:多的联系
      如果两边都是选择参与,也可以将1的一边的主键放到多的一方的关系中作为一个属性,但该属性有可能为NULL

  • 相关阅读:
    C#预编译指令
    net 数据库连接详解 相当经典啊
    C#中参数前缀ref、out的使用
    C#中HTML字符转换函数
    SQL语句【TSQL汇总】
    64位XP操作系统下访问Access数据库的问题及解决
    ASP.NET Cache的一些总结
    xml 总结
    POJ 1011 Sticks
    POJ 3278 Catch That Cow
  • 原文地址:https://www.cnblogs.com/dirichlet/p/1886455.html
Copyright © 2020-2023  润新知