Ist es möglich, eine Beziehung von einer Benutzertabelle zu einem System Tabelle anzuzeigen? Um einen Zusammenhang zu geben, möchte ich die Werte einer Spalte in einer meiner Tabellen auf die Spaltennamen einer anderen meiner Tabellen eingeschränkt werden, die am einfachsten zu tun scheint durch die Systemansicht, die die Spalte beherbergt Namen der zweiten Tabelle.Können Sie Beziehungen zu Systemtabellen/Sichten haben?
Also, mit dem klassischen Beispiel, wenn ich eine Tabelle von Kunden (Vorname Nachname) hätte, möchte ich eine andere Tabelle erstellen, die eine Spalte "customerAttribute" hatte, die nur "Vorname" oder "Nachname" sein könnte Um dies dynamisch zu halten, wäre es nett, wenn die "customerAttribute" -Spalte tatsächlich ein Fremdschlüssel aus der Systemansicht wäre, der die Namen der Spalten in der Customer-Tabelle speichert; Auf diese Weise muss ich mich nicht um Datenintegritätsprobleme kümmern, da Spalten in der tatsächlichen Customers-Tabelle hinzugefügt, gelöscht und umbenannt werden.
Ich habe keine einfache Möglichkeit gesehen, diese Beziehung in SQL Server zu erstellen, also frage ich mich, ob ein Durcheinander mit/Erstellen von Beziehungen mit Systemtabellen und/oder Sichten ein großes Nein ist.
Danke!
P.S. Ich stelle diese Frage, um mir zu helfen, another problem zu lösen, die ich auf SO gepostet habe.
Bearbeiten: Auch wenn Sie nicht direkt eine Beziehung zu einer Systemansicht erstellen können, könnten Sie möglicherweise eine Ansicht erstellen, die die Abfrage an die Systemansicht zurückgegeben (um die Spaltennamen zu erhalten) und dann eine Beziehung zu dieser Ansicht hergestellt. Ich werde es jetzt versuchen.
Ich hoffe, dass ich nie an einem solchen System arbeiten muss. –
Kannst du aber ich weiß nicht ob es legal ist;) Sorry könnte nicht widerstehen – Janusz