SQLServer学习笔记 - 主键的理解


最近在学习SQLServer时,发现里面有个主键的概念和作用总是模糊不清,因此上网去搜索了一些主键的一些意义,加深一下理解

什么是主键

按照百度百科的定义,主键(primary key)是数据表中的一个或多个字段,其值用于唯一的标识表中的某一条记录;在两个表的关系中,主关键字用来在一个表中引用来自于另一个表的特定记录;
(这段话有点抽象,看完了和没看区别不大,且看下面的讲解)

建立主键遵循的原则

(1)主键应当是对用户没有意义的,当用户看到了一个表示多对多关系的连接表中的数据,并抱怨它没有什么用处,那么证明表的主键设计很好;
(2)永远不要更新主键,因此主键除了唯一的标识一行之外,没有其他用处,如果需要更新,那么主键对于用户无意义的原则被违反了
:这项原则在对于哪些经常需要在数据转换或者多数据合并时进行数据整理的数据并不适用
(3)主键不应该包含动态变化的数据,如时间戳、时间列等
(4)主键应当由计算机自动生成

主键的特点

(1)一个表中只能有一个主键,如果在其他字段上建立主键,则原来的主键就会取消
(2)主键的值不可以重复,也不可以为空

真正的主键理解

说了前面这么多概念ÿ

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值