sql 中的主键与标识的区别?? 10fredrickhu]

发布时间:2016-12-9 19:45:02 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"sql 中的主键与标识的区别?? 10fredrickhu]",主要涉及到sql 中的主键与标识的区别?? 10fredrickhu]方面的内容,对于sql 中的主键与标识的区别?? 10fredrickhu]感兴趣的同学可以参考一下。

在sql server 中表的主键与标识有没有区别,它们可不可以相互替代??? 谢谢!!!

标识列:identity(int,1,1)这样的 标识列可做为主键 主键可以为字符型,只要不重复就行. 主键不可做为标识列.

有,可根据: 标识:  select =name from syscolumns where id=object_id('表名') and status=0x80 主键:   select name from syscolumns where id=object_id('表名') and colid in(    select colid from sysindexkeys where object_id('表名')=id and indid in(     select indid from sysindexes where object_id('表名')=id and name in(      select name from sysobjects where xtype='PK' and parent_obj=object_id('表名')    )))

也可以用显示主键 EXEC sp_fkeys @pktable_name = N'表名'

=name --去掉=号

标识列:有些情况下可以重复滴,主键不行,因为主键是约束来者 表示列没有索引滴,建主键,是要增加索引页滴 待续。。。

主键要求:1.惟一性;2.非空性。 标识列要求:1.数据类型属于:tinyint、smallint、int、bigint、decimal(p,0) 或 numeric(p,0)之一;2.根据设置的初始值,从该值的基础上按照步长值进行递增。

标识是一种列数据的填充方式,其值只能是整数或小数,而主键却可用其它类型数据 主键是关联中的主体,对本身来说是区别行数据的标识(非上面的标识)它也非空,但建立了索引(一个表只能有一个) 标识对一列而言,主键除一列外还可由多列组合而成, 因为他们在设计时都只能有一个,也可以都没有,往往我们把主键设在标识字段上,所以容易混淆.

我也想了解,谢谢LZ.

涨知识了.

两码事,不要混。 主键用于唯一标识表中的行,每个表可指定一个主键。 主銉可用指定一个字段或多个字段。 标识列为自增列,因具不重复的特性,可指定为主键。

引用 10 楼 cxmcxm 的回复:两码事,不要混。 主键用于唯一标识表中的行,每个表可指定一个主键。 主銉可用指定一个字段或多个字段。 标识列为自增列,因具不重复的特性,可指定为主键。 说的比较清楚。

主键用于唯一标识表中的行,每个表可指定一个主键,主键也可以为组合主键。 标识列 是全局变量, 只能是整数,不能为其他类型,它没有任何意义,只是一般作为编号;也可以作为主键 ,它是自动增长,不可以插入值。

引用 11 楼 DVD_01 的回复:引用 10 楼 cxmcxm 的回复: 两码事,不要混。  主键用于唯一标识表中的行,每个表可指定一个主键。  主銉可用指定一个字段或多个字段。  标识列为自增列,因具不重复的特性,可指定为主键。    说的比较清楚。 说的非常明白!

求正解

学习!

上一篇:磊子,在呢吗 1wzy_love_sly]
下一篇:SQL2005的查询分析器在哪里 50dmhaifeng]

相关文章

相关评论