Natürlich ist es möglich, eine Fremdschlüsselbeziehung zu einem zusammengesetzten Primärschlüssel (mehr als eine Spalte) herzustellen. Sie haben uns die Anweisung nicht gezeigt, mit der Sie versuchen, diese Beziehung herzustellen - sie sollte etwa so lauten:
ALTER TABLE dbo.Content
ADD CONSTRAINT FK_Content_Libraries
FOREIGN KEY(LibraryID, Application)
REFERENCES dbo.Libraries(ID, Application)
Benutzt du das?? Wenn (ID, Application)
ist tatsächlich der Primärschlüssel auf dbo.Libraries
, diese Anweisung sollte definitiv funktionieren.
Luk:Nur zur Überprüfung - können Sie diese Anweisung in Ihrer Datenbank ausführen und zurückmelden, was die Ausgabe ist??
SELECT
tc.TABLE_NAME,
tc.CONSTRAINT_NAME,
ccu.COLUMN_NAME
FROM
INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc
INNER JOIN
INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE ccu
ON ccu.TABLE_NAME = tc.TABLE_NAME AND ccu.CONSTRAINT_NAME = tc.CONSTRAINT_NAME
WHERE
tc.TABLE_NAME IN ('Libraries', 'Content')