Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Uma tabela do sql server pode ter duas colunas de identidade?

CREATE TABLE [dbo].[Foo](
    [FooId] [int] IDENTITY(1,1) NOT NULL,
    [BarId] [int] IDENTITY(1,1) NOT NULL
)

retorna
Msg 2744, Level 16, State 2, Line 1
Multiple identity columns specified for table 'Foo'. Only one identity column per table is allowed.

Então, não, você não pode ter duas colunas de identidade. É claro que você pode fazer com que a chave primária não seja incrementada automaticamente (identidade).

Edite:msdn:CREATE TABLE (Transact-SQL) e CREATE TABLE (SQL Server 2000):

Apenas uma coluna de identidade pode ser criada por tabela.