在使用SQL Server中我们经常会使用标识列来做主键,一般情况下我们都将标识列设置成int类型,然后设置标识种子和增量。
但是如果数据库中的数据过大,那么int类型数据可能不够用,改怎么办呢?
在SQL Server中有一种数据类型UniqueIdentifier类型,该类型存储16字节的二进制值,为该列分配必须具有的唯一的标识符,因此该列的数值不可能存在重复,因此也可以作为主键来使用。
据说这种数据类型是更具当前时间和服务器网卡地址随机生成,100万年之内不会出现重复的值,看来足够我们使用了。哈哈哈。
设置某列的值为UniqueIdentifier类型,为非即可。
CREATE TABLE Test( [id] [uniqueidentifier] NOT NULL, [name] [varchar](20) NOT NULL, [comm] [varchar](100) )
然后插入数据的时候使用newID()函数插入数据即可。
insert into Test values(newID(),'TestForMe','This is just a test')
看看执行以后的结果,这样生成的标识列如论如何也不会有重复,而且相信对我们的系统来说,够用了。呵呵。
本文介绍在SQLServer中使用UniqueIdentifier类型作为主键的方法。当int类型不足以满足大量数据的需求时,UniqueIdentifier类型提供了一个独特且不会重复的解决方案。文章详细讲解了如何创建带有该类型主键的表,并演示了如何利用newID()函数插入数据。
552

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



