Klucz zagraniczny do klucza innego niż podstawowy

Mam tabelę, która przechowuje dane, a jeden z tych wierszy musi istnieć w innej tabeli. Chcę więc klucza obcego, aby zachować spójność referencyjną.

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)
)

Jednak, jak widzisz, klucz obcy do tabeli I, kolumna nie jest PK. Czy istnieje sposób na stworzenie tego klucza obcego, a może lepszy sposób na utrzymanie tej integralności referencyjnej?

questionAnswers(3)

yourAnswerToTheQuestion