我正在尝试使用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, );
答案 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值。特别是对于您的语言,这将是一个更好的选择