Una clave foránea DEBE referirse a columnas que componen un índice único (PK o UK) con el mismo número de columna, sus tipos y orden. Por ejemplo:
CREATE TABLE PrimaryTable (
Key1 varchar(20),
Key2 date)
GO
ALTER TABLE PrimaryTable ADD CONSTRAINT PK
PRIMARY KEY (Key1, Key2)
GO
CREATE TABLE SecondaryTable (
AutoID int IDENTITY,
Key1 varchar(20),
Key2 date)
GO
ALTER TABLE SecondaryTable ADD CONSTRAINT FK
FOREIGN KEY (Key1, Key2) REFERENCES PrimaryTable (Key1, Key2)
GO