员工 | 主键 | 外键 | |||
---|---|---|---|---|---|
员工姓名 | 员工工资 | 员工性别 | 员工年龄 | 员工编号 | 部门编号 |
张三 | 1000 | 男 | 20 | 100000 | 1 |
李四 | 2000 | 男 | 20 | 100000 | 1 |
王五 | 1500 | 男 | 20 | 100000 | 2 |
部门 | |||
---|---|---|---|
部门姓名 | 部门人数 | 部门地址 | 部门编号 |
市场部 | 10000 | 西安 | 1 |
研发部 | 50 | 北京 | 2 |
主键:
能够唯一标识一个事物的字段或者多个字段的组合。
注:
-
不要用业务逻辑当主键,例如 student_name,应使用没有意义的编号当主键。主键通常都是整数,不建议使用字符串(如果主键用于集群式服务,才考虑字符串当主键,但一般用 uuid)。
-
含有主键的表叫主键表。
-
主键的值通常都不允许修改,除非本记录被删除。
-
主键不要定义成id,而要定义成
表名_id
。
外键
如果一个表中若干个字段是来自另外若干个表的主键或唯一键,则这若干个字段就是外键。
表示事物和事物之间的关系,不是当前表本身,来自另一个或多个表。
外键字段在哪个表中,哪个表就是外键表,外键来自的那一张表是主键表。
注意:
-
外键通常来自另外表的主键而不是唯一件,因为唯一键可能为 null。
-
外键不一定来自另外的表,也可能来自本表的主键。
字段
一个事物的某一个特征。
记录
字段的组合,表示的是一个具体的事物。
表
记录的组合,表示的是同一类型事物的集合。
列
字段的另一种称谓。
属性
字段的另一种称谓。
元组
记录的另一种称谓。
表、字段和记录的关系:
字段是事物的属性,记录是事物的本身,表是事物的集合。
先删除主键表还是外键表?
先删除外键表。如果先删除主键表,会报错,因为外键表的数据引用会失败。
网友评论