29

我正在使用 Visual Studio 2010 高级版,并使用 Visual Studio 数据库工具创建了一个数据库。我将一个字段设置为主键,我想让它自动递增。

但是当我查看属性时,它没有激活。我的意思是我无法使用 Visual Studio 2010 高级内置数据库工具进行设置。我无法设置身份规范。是因为我使用的是 Visual Studio 2010 高级版吗?如何使 productID 列自动递增?

在此处输入图像描述

4

2 回答 2

28

将其数据类型更改为int(或类似)。您不能在列上设置IDENTITY规范。nchar(10)

来自CREATE TABLE

身份

指示新列是标识列。向表中添加新行时,数据库引擎会为该列提供唯一的增量值。标识列通常与 PRIMARY KEY 约束一起使用,作为表的唯一行标识符。IDENTITY 属性可以分配给 tinyint、smallint、int、bigint、decimal(p,0) 或 numeric(p,0) 列。每个表只能创建一个标识列。绑定默认值和 DEFAULT 约束不能与标识列一起使用。必须指定种子和增量,或者两者都不指定。如果两者均未指定,则默认为 (1,1)。

(我的重点

于 2013-05-08T06:50:44.300 回答
4

要使主键列自动递增,您需要将其创建为intwithIDENTITY例如:

[Id] INT NOT NULL PRIMARY KEY IDENTITY, 

或通过 Visual Studio (2017):

  • 右键单击列 > 属性 > 标识规范 > 是标识 >

在此处输入图像描述

于 2019-03-22T02:07:30.300 回答