Estoy intentando crear una relación/restricción de clave foránea compuesta. Todas las tablas están vacías. Tengo esta tabla:Creación de una restricción de clave foránea compuesta
CREATE TABLE [dbo].[ChemSampleValueTest](
[SampleNumber] [int] NOT NULL,
[ParameterID] [int] NOT NULL,
[Value] [numeric](18, 6) NOT NULL,
[Accuracy] [varchar](50) NULL,
[ResultGroupID] [int] NOT NULL,
[QAState] [nvarchar](32) NOT NULL,
CONSTRAINT [PK_SampleValueTest] PRIMARY KEY CLUSTERED
(
[SampleNumber] ASC,
[ParameterID] ASC,
[ResultGroupID] ASC
)
) ON [PRIMARY]
y esta tabla:
CREATE TABLE [dbo].[ChemSampleValueEventLinkTest](
[Event] [int] NOT NULL,
[SampleNumber] [int] NOT NULL,
[ResultGroupID] [int] NOT NULL,
[ParameterID] [int] NOT NULL,
[QAState] [nvarchar](32) NULL
) ON [PRIMARY]
y quiero vincularlos como esto:
alter table [ChemSampleValueEventLinkTest] add
constraint FK_ChemSampleValueEvent_ChemSampleValue_test
foreign key ([SampleNumber], [ResultGroupID], [ParameterID])
references ChemSampleValueTest ([SampleNumber], [ResultGroupID], [ParameterID])
Por lo que yo puedo decir todos los tipos de columna son lo mismo, pero sigue diciendo
No hay claves principales o candidatas en la tabla a la que se hace referencia 'ChemSampleValueTest' que coinciden con la lista de columnas de referencia en la clave externa 'FK_ChemSampleValueEvent_ChemSampleValue_test'.
¿Dónde me estoy equivocando?
Hay algunas preguntas similares que salpican (sobre todo sobre violaciónes de restricción), pero no pude encontrar nada que me ayudó. – sennett