如何将积分主键添加到使用SELECT INTO创建的表中

CHS*_*CHS 3 sql t-sql sql-server sql-server-2012

我正在使用SQL Server 2012,并以下列方式创建表:

SELECT x, y
INTO CampRegistration
FROM tableA

UNION

SELECT x, y
FROM tableB
Run Code Online (Sandbox Code Playgroud)

x和y不是主键.我希望该CampRegistration表有一个额外的列,它是一个完整的代理主键,即.类似的东西IDENTITY.

我怎么能这样做,或者通过修改SELECT INTO或者之后添加和填充列?

Aar*_*and 7

其他答案添加行号但不要使其成为键,并且当您要添加新注册时也没有帮助.以下是在运行SELECT INTO之后,您可以添加IDENTITY列并使其成为键:

ALTER TABLE dbo.CampRegistration
  ADD RegistrationID INT IDENTITY(1,1);

ALTER TABLE dbo.CampRegistration 
  ADD CONSTRAINT PK_CampRegistration
  PRIMARY KEY (RegistrationID);
Run Code Online (Sandbox Code Playgroud)