Chcę przynieść JEDEN klucz obcy z kilku z nich w tabeli. w interfejsie GUI w serwerze sql, jeśli rozszerzymy opcje tabeli, możemy zobaczyć folder o nazwie "Keys", w tym folderze znajduje się jeden klucz podstawowy i kilka obcych. W moim przykładzie mam trzy tabele, Klient, Zamówienia i Produkty. Klient ma Customer_ID jako primary, Items ma Item_ID jako primary, a Order ma Order_ID jako primary, foreign key Customer_nbr reference customer (Customer_ID) i foreign key item_nbr references Items (Item_ID).Jak znaleźć określony klucz obcy tabeli za pośrednictwem T-SQL?
więc w tym folderze „Keys” istnieją nazwy dla tych kluczy, takie jak: „FK_ Zamówienia _Customer__38996AB5”
problem jest, że liczba „38996AB5”, który następuje słowo klienta nie jest ustalona, jeśli usuń ograniczenia, a następnie przywróć je, zostanie zmienione (ze względów bezpieczeństwa).
więc szukam polecenia SQL, które można wpisać w celu uzyskania tego klucza, niezależnie od tego, jak było. logicznie mógłbym użyć słowa kluczowego "LIKE" (tj. ... like = 'FK_ Orders _Customer __%'), ale nie mogłem wiedzieć, jak lub gdzie je umieścić.
z góry dzięki.
To jest główny powód, dla którego polecam, abyś ** zawsze jawnie * nadawał sensowne nazwy ograniczeniom klucza obcego podczas ich tworzenia! –
Zgadzam się z Markiem. Jawne nazwy powinny być nadawane podczas tworzenia z tego konkretnego powodu ............... jest to różnica między dba-101 i dba-301, IMHO. Mamy firmowy standard, że wszystkie nazwy obiektów muszą być jednoznaczne ... żadne z nazewnictwa microsoft auto-voodoo. – granadaCoder