最近在学习SQLServer时,发现里面有个主键的概念和作用总是模糊不清,因此上网去搜索了一些主键的一些意义,加深一下理解
什么是主键
按照百度百科的定义,主键(primary key)是数据表中的一个或多个字段,其值用于唯一的标识表中的某一条记录;在两个表的关系中,主关键字用来在一个表中引用来自于另一个表的特定记录;
(这段话有点抽象,看完了和没看区别不大,且看下面的讲解)
建立主键遵循的原则
(1)主键应当是对用户没有意义的,当用户看到了一个表示多对多关系的连接表中的数据,并抱怨它没有什么用处,那么证明表的主键设计很好;
(2)永远不要更新主键,因此主键除了唯一的标识一行之外,没有其他用处,如果需要更新,那么主键对于用户无意义的原则被违反了
注:这项原则在对于哪些经常需要在数据转换或者多数据合并时进行数据整理的数据并不适用
(3)主键不应该包含动态变化的数据,如时间戳、时间列等
(4)主键应当由计算机自动生成
主键的特点
(1)一个表中只能有一个主键,如果在其他字段上建立主键,则原来的主键就会取消
(2)主键的值不可以重复,也不可以为空
真正的主键理解
说了前面这么多概念ÿ

最低0.47元/天 解锁文章
1836

被折叠的 条评论
为什么被折叠?



