1

一、建实体

建一个实体的几个要素

  1. 类名
  2. 主键
  3. 属性(字段)
  4. 如和其他实体有关系,则需要有外键(Foreign key)

如下,为一实体的逻辑视图

clipboard.png

二、关系

以教师与排课表的关系为例:

1:1型

  • 一个教师对应0或1项排课(Cardinality: 0 or 1, Parent is required: true):

clipboard.png

  • 1个教师对应1项排课
  • 0或1个教师对应0或1项排课(Cardinality: 0 or 1, Parent is required: true):

clipboard.png

1:n型

  • 1个教师对应多项排课(Cardinality: 1 or more, Parent is required: true)

clipboard.png

  • 0或1个教师对应多个排课(Cardinality: 1 or more, Parent is required: false)

clipboard.png

  • 1个教师对应0或多项排课(Cardinality: 0 or more, Parent is required: true)

clipboard.png

  • 0或1个教师对应0或多项排课(Cardinality: 0 or more, Parent is required: false)

clipboard.png

m:n型

  • 多个教师对应多项排课

clipboard.png

注意事项

  • 实线(identifying)和虚线(non-identifying)的区别:

    • 实线表示表中的外键值不能独立存在,在表里就是把“外键和id”和起来设为主键,不能为空。
    • 虚线表示表中外键值可以独立存在,在表中就是将外键和其他字段放在一起。
    • 一般来说,1:1 1:n都是用虚线,n:m只表示表的关系时用实线较好。因为主表的记录消失,依托记录的对应关系就没用了。如果不是单纯表示对应关系,还是用虚线,才能满足要求。

clipboard.png

  • 逻辑视图是给人看的,中文;物理视图是建表用的,英文。
  • astah删除外键的方法:

点任一实体,左侧选relationship标签,选中要删的外键,点下面的垃圾筒即可删除。

clipboard.png


陈杰
167 声望332 粉丝

为API生,为框架死;