我想使用
SQL SERVER 2008
构建一个员工表,并且在我的表中我想为每个员工都有一个 ID 。
我听说过 GUID 并且我有点理解它是一种数据类型,但我无法使用它
你能告诉我使用方法吗...
顺便说一句,假设我想要这样的东西:
CREATE TABLE Employees (
ID guid PRIMARY KEY,
Name NVARCHAR(50) NOT NULL
)
我该怎么办?因为我想从中受益,但我不知道如何做到这一点
在 SQL Server 中它不称为 GUID。这就是所谓的唯一标识符
正如其他人已经指出的那样,该类型称为 UNIQUEIDENTIFIER。但我认为您在继续之前绝对必须阅读这篇文章:GUID 作为主键和/或集群键
它们被称为唯一标识符
如果是集群,请勿使用 uniqueidentifier 作为主键(这是 PK 的默认值)
说真的:使用标准 IDENTITY 来代替
您还可以考虑使用 NEWSEQUENCIALID 作为 ID 列的默认值,因为它比使用 NEWID() 生成 GUID 更快。
但是(来自上面的同一链接):-
如果担心隐私,请勿使用此功能。可以猜测下一个生成的 GUID 的值,从而访问与该 GUID 关联的数据。
实际演示,FWIW
DECLARE @guid1 AS uniqueidentifier
SET @guid1 = NEWID()
SELECT @guid1
sql server 中的 GUID 通过 UNIQUEIDENTIFIER 数据类型来识别。下面是所需的代码。
CREATE TABLE Employees
(
Id UNIQUEIDENTIFIER PRIMARY KEY,
Name NVARCHAR (50) not null
)
GO