löscht doppelte Fremdschlüssel

8

Ich habe ungefähr 100 Tabellen, in denen alle doppelte Fremdschlüsseleinschränkungen für sie haben.

Gibt es einen Weg, wie ich es loswerden könnte? Gibt es eine Abfrage, die mir alle doppelten Schlüssel geben könnte?

    
peter 23.03.2012, 21:42
quelle

3 Antworten

10

Ich verwende dieses T-SQL-Skript hier, um möglicherweise doppelte FK-Abhängigkeiten zu erkennen - und es erzeugt auch die notwendigen ALTER TABLE...DROP CONSTRAINT -Anweisungen in der letzten Ausgabespalte.

Sie können nicht zuverlässig automatisch erkennen und auswählen, welche von mehreren FK-Abhängigkeiten fallen gelassen werden. Sie müssen sie also im Grunde erkennen und dann manuell auswählen, welche entfernt werden sollen (mit der von meiner Abfrage erzeugten drop-Anweisung).

%Vor%     
marc_s 23.03.2012, 21:51
quelle
2

Für 100 Tabellen ist dies keine Option, aber wenn Sie nur ein paar Tabellen haben, erstellen Sie ein Diagramm in SQL Server Management Studio, fügen Sie dort Ihre Tabellen hinzu und löschen Sie die Duplikate visuell.

    
AFD 23.03.2012 21:53
quelle
0

Dies entfernt die zuletzt erstellten Duplikate

%Vor%     
Afr 21.02.2018 19:22
quelle