黑马程序员技术交流社区

标题: 关于主键的设置 [打印本页]

作者: ARMdong    时间: 2012-7-31 12:45
标题: 关于主键的设置
在创建一个表时,对于主键的设置,在什么情况下选择用逻辑主键还是业务主键?
作者: 许庭洲    时间: 2012-7-31 12:53
1,对于业务数据,最好采用逻辑主键;
2,对于业务复合主键有多个字段(个数大于3),需要采用逻辑主键;
3,对于基础数据,最好采用业务主键。
作者: 樊占江    时间: 2012-7-31 14:09
业务主键(自然主键):在数据库表中把具有业务逻辑含义的字段作为主键,称为“自然主键(Natural Key)”。

逻辑主键(代理主键):在数据库表中采用一个与当前表中逻辑信息无关的字段作为其主键,称为“代理主键”。

复合主键(联合主键):通过两个或者多个字段的组合作为主键。


作者: 李根    时间: 2012-7-31 16:14
逻辑主键(surrogate   key)是唯一标识一条记录,用来关联 .
业务主键(natrual   key)是对与前端可见的,用来索引和关联的.
作者: 蔡尚猛    时间: 2012-7-31 16:30
逻辑主键→没有意义的主键,主要就是用来区别一列数据的
业务主键→存在业务意义的主键;
一般情况下为了除表示指定一列数据外,在业务上没有任何意思的字段就设置为逻辑主键;如果该字段在业务上表示着什么意思的话就设置为业务主键,
个人浅见…………{:soso_e100:}
作者: 肖攀    时间: 2012-7-31 17:45
个人意见:并不是说用哪种主键就好,只要业务主键能保证唯一性,就没必要再增加一列来作为逻辑主键了
作者: 郭正续    时间: 2012-7-31 18:54
业务主键,有意义的字段。逻辑主键,无意义的字段。我感觉还是逻辑主键好一点






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2