我第一次使用SQL Server,我发现列属性名为Is Identity.
这是什么意思?
将列属性标记为Is Identity = Yes有什么好处?
它只是意味着该列使用该Identity(seed, increment)
函数来提供主键的值(通常).它也被称为"自动编号".下面的第二行是一个例子:
CREATE TABLE Table ( TableID bigint IDENTITY(1,1) NOT NULL, DateTimeStamp datetime NOT NULL DEFAULT (getdate()), Data nvarchar(100) NOT NULL, CONSTRAINT PK_Table PRIMARY KEY CLUSTERED ( TableID ASC )
它充当为每个记录递增的列的默认值.请注意,您还可以从SCOPE_IDENTITY()中插入值.不要使用@@ IDENTITY,因为它已被折旧,并且在触发器或嵌套上下文的情况下可能返回错误的结果.