我想知道是否可以创建一个 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)?
最佳答案
这对我在 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 关键字...
关于sql - varchar 列上的标识键 - T-SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3638870/