通过SQL Server 2012 Management Studio中的IDENTITY自动增量

时间:2013-11-20 08:05:23

标签: sql sql-server-2012 ssms

我正在尝试使用identity在SQL Server 2012 Management Studio中执行自动增量,但我无法填写增量列ID的值。填写插入值的内容是什么?

我的部分代码如下所示:

CREATE TABLE G_Members
(
ID int(4) IDENTITY(0001, 1) PRIMARY KEY,
Jméno varchar(20) NOT NULL,
Nick varchar(20) NULL,
Příjmení varchar(20) NOT NULL,
Pohlaví char(1) NOT NULL,
Datum_Narození date NULL
);

INSERT INTO G_Members VALUES
( 'Martin', 'Mates', 'Škorník', 'M', 01-AUG-1978);
INSERT INTO G_Members VALUES
(NEXT VALUE FOR G_Members.ID, 'Ondřej', ' ', 'Panenka', 'M', 29-MAR-1983, );

1 个答案:

答案 0 :(得分:2)

如果您有Auto Increment Column,则无法为该列插入任何数据。您必须以指定所有其他列并忽略IDENTITY列的方式修改SQL语句。这是通过以下方式实现的:

INSERT INTO G_Members (Jméno,Nick,Příjmení, Pohlaví,Datum_Narození) VALUES ( 'Martin', 'Mates', 'Škorník', 'M', 01-AUG-1978);

SQL Server将为Id列插入新值。

编辑:
我建议您使用nvarchar而不是varchar,因为这样您就可以存储unicode值。特别是对于您的语言,这将是一个更好的选择