Będziesz musiał zarządzać ograniczeniem referencyjnym w bazach danych za pomocą wyzwalacza.
Zasadniczo tworzysz wyzwalacz wstawiania, aktualizowania, aby zweryfikować istnienie klucza w tabeli kluczy podstawowych. Jeśli klucz nie istnieje, cofnij wstawienie lub aktualizację, a następnie obsłuż wyjątek.
Przykład:
Create Trigger dbo.MyTableTrigger ON dbo.MyTable, After Insert, Update
As
Begin
If NOT Exists(select PK from OtherDB.dbo.TableName where PK in (Select FK from inserted) BEGIN
-- Handle the Referential Error Here
END
END
Edytowane: Aby wyjaśnic. Nie jest to najlepsze podejście do egzekwowania integralności referencyjnej. Najlepiej byłoby, gdyby obie tabele miały tę samą bazę danych, ale jeśli nie jest to możliwe. Zatem powyższe jest potencjalnym rozwiązaniem dla Ciebie.