我想知道我是否可以创建一个Identity(在Varchar列上自动增加。如何将其作为主键并在其他表上创建外键引用。
这是我的代码 -
CREATE TABLE Questions(
QuestionID int IDENTITY PRIMARY KEY,
QuestionNo as 'Q'+Cast(QuestionID as Varchar(10),
Question Varchar(200)
)
有没有办法可以将QuestionNo作为主键并在另一个表中引用它(比如Answers(AnswerID,QuestionNo,AnswerText)?
答案 0 :(得分:9)
这在SQL Server 2005上对我有用:
CREATE TABLE Questions(
QuestionID int IDENTITY NOT NULL,
QuestionNo as 'Q'+Cast(QuestionID as Varchar(10)) PERSISTED PRIMARY KEY,
Question Varchar(200)
)
主要部分是计算列需要PERSISTED关键字......
答案 1 :(得分:3)
答案 2 :(得分:-1)
此代码正常运行
CREATE TABLE IdentityExample(
ID int IDENTITY NOT NULL,
QNo as 'Q'+Cast(ID as Varchar(10)) PERSISTED PRIMARY KEY,
name Varchar(200)
)