SQL Server 2005.Jak wyszukiwać klucze obce, które nie są zgodne z ich ograniczeniami?
Dodaję ograniczenia klucza obcego do bazy danych aplikacji, która rzekomo ich nie potrzebowała. Oczywiście, dane stały się niewiarygodne i są osierocone wpisy w polu klucza obcego.
Ustawienia:
Dwie tabele, TableUser i TableOrder. TableUser ma klucz podstawowy "UserID", a TableOrder ma klucz obcy "UserID".
Jak znaleźć wiersze, w których TableOrder.UserID nie ma pasującego wpisu w TableUser.UserID?
Na przykład TableOrder.UserID ma wartość 250, ale nie ma klucza do dopasowywania TableUser.UserID 250.
Po znalezieniu ich, co chcesz z nimi zrobić? Np. Je usunąć? – erickson
ERRR, jeśli istnieje klucz obcy, w jaki sposób może on nie pasować? Czy faktycznie masz FK-y zakodowane w twoim SQL? –
Oznacza on tabelę z polami, które są traktowane przez aplikację jako klucz obcy, ale nigdy nie były egzekwowane przez samą bazę danych. – BradC