Chave estrangeira para chave não primária

Eu tenho uma tabela que contém dados, e uma dessas linhas precisa existir em outra tabela. Então, eu quero uma chave estrangeira para manter a integridade referencial.

CREATE TABLE table1
(
   ID INT NOT NULL IDENTITY(1,1) PRIMARY KEY,
   AnotherID INT NOT NULL,
   SomeData VARCHAR(100) NOT NULL
)

CREATE TABLE table2
(
   ID INT NOT NULL IDENTITY(1,1) PRIMARY KEY,
   AnotherID INT NOT NULL,
   MoreData VARCHAR(30) NOT NULL,

   CONSTRAINT fk_table2_table1 FOREIGN KEY (AnotherID) REFERENCES table1 (AnotherID)
)

No entanto, como você pode ver, a tabela que eu chave estrangeira para, a coluna não é o PK. Existe uma maneira de criar essa chave estrangeira, ou talvez uma maneira melhor de manter essa integridade referencial?

questionAnswers(3)

yourAnswerToTheQuestion