SQL Server中是否有一种方法可以创建一个主键自动递增的表?我一直在寻找“UniqueIdentifier”类型,但这似乎没有达到我的预期。
目前,我有这样的事情:
CREATE TABLE [dbo].[MyTable](
[Date] [datetime] NOT NULL,
[MyField1] [nchar](50) NOT NULL,
[MyField2] [nvarchar](max) NULL,
[Key] [uniqueidentifier] NOT NULL
) ON [PRIMARY]
基本上,我希望KEY从1开始,并为每条记录增加自己。
答案 0 :(得分:5)
您正在寻找IDENTITY property。
来自文档:
在表格中创建标识列。 此属性与CREATE一起使用 表和ALTER TABLE Transact-SQL 语句。
IDENTITY [ (seed , increment) ]
种子
是用于非常的值 第一行加载到表中。
增量
是否添加了增量值 到以前的身份价值 已加载的行。
您必须同时指定种子和 增量或不增加。如果两者都不是 指定,默认为(1,1)。
顺便说一句,所有这一切也可以通过Sql Server的mgmt UI轻松实现。只需右键单击您的表格并选择设计。然后选择正确的列并设置IDENTITY属性。
答案 1 :(得分:2)
在表create name中定义主键,如下所示:
[Key] [int] IDENTITY(1,1)NOT NULL