2017-05-08 3 views
-1

Ich extrahiere Daten aus einem System, das uniqueidentifier als Feldtyp für seine Primärschlüssel verwendet.Erstellen Sie persistenten Schlüssel mit zwei eindeutigen IDs als Quelle

Auf dem System, aus dem ich extrahiere, habe ich Zugriff auf eine einzelne Tabelle erhalten, die abgeleitet wurde. Diese Tabelle wurde erstellt, indem eine Tabelle mit einer Eins-zu-Vielen-Tabelle verbunden wurde, was dazu führte, dass ich zwei dieser eindeutigen Identifizierungsspalten verwenden musste, um Eindeutigkeit zu erhalten.

Gibt es eine Möglichkeit für mich, einen einfachen persistenten Schlüssel mit diesen beiden Spalten zu erstellen?

Die einzige Idee, die ich im Moment habe, ist eine Identitätsspalte auf meinem Tisch zu erstellen und alle zukünftigen Extraktionen (täglich) in meine Tabelle zu übernehmen.

Gibt es eine bessere Methode als diese?

Antwort

0

Sie können einen so genannten "zusammengesetzten Schlüssel" hinzufügen.

ALTER TABLE dbo.yourtablename 
ADD CONSTRAINT uq_yourtablename UNIQUE(column1,column2); 
+0

Wird das eine neue Spalte zu meiner Tabelle hinzufügen? – Matt

+0

Nein, es wird lediglich eine Einschränkung zur Tabelle hinzugefügt, die bestätigt, dass jede Zeile eindeutig ist - basierend auf einer Kombination der "GUIDs" in den Spalten mit den eindeutigen Bezeichnern. Bevor Sie die Anweisung ausführen, ersetzen Sie "column1" durch den Namen der ersten Spalte mit der eindeutigen ID und "column2" durch den Namen der zweiten Spalte. Wenn die Tabelle bereits Duplikate enthält, wird die Einschränkung nicht in der Tabelle eingerichtet, bis Sie sie entfernen. Sobald Sie die Einschränkung eingerichtet haben, lässt die Tabelle das Laden von Duplikaten nicht zu. – russ

Verwandte Themen