我想创建一个包含多个列的表,主键卷号为。这个没有。会像cse001
,cs002
,cs003
等等。
其他列将是姓名,性别,分支等。
因此,如果我添加一个新行,则应添加新的卷号。 (Cs***
)加1。
那我该如何创建我的桌子?
我正在使用SQL Server 2008。
答案 0 :(得分:3)
修改:SQL Fiddle
您可以将IDENTITY列用作非PK字段,然后使用主键的计算列:
CREATE TABLE TestTable
(
PKOfTable AS ('CS' + CAST(AutoIncId as varchar)) PERSISTED NOT NULL PRIMARY KEY,
[AutoIncId] INT IDENTITY NOT NULL,
[OtherField] VARCHAR(10)
);
INSERT INTO TestTable (OtherField) VALUES ('hello1')
INSERT INTO TestTable (OtherField) VALUES ('hello2')
INSERT INTO TestTable (OtherField) VALUES ('hello3')
INSERT INTO TestTable (OtherField) VALUES ('hello4')
SELECT * FROM TestTable