SQL-Server - Daten kopieren von staging-Tabelle
Ich bin mit staging-Tabellen, um die Validierung und den Einsatz in live.
Angenommen ich habe eine Tabelle PERSONEN
TABLE Persons
(
Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
HouseNumber int,
)
und ein STAGING-TABELLE wie folgt
TABLE Persons_Staging
(
Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
HouseNumber varchar(255),
)
Muss ich schreiben, ein Verfahren zur übertragung von Daten aus der staging-Tabelle der live Tabelle während der Gewährleistung werden keine Duplikate eingefügt werden. Wie kann ich das erreichen?
Vielen Dank im Voraus
- Ich habe nicht etwas getan, wie dies manuell für Jahre, und sind gekommen, um zu sehen, diese Art von Aufgabe als völlig unproduktiv. Dies kann nicht eine option für jetzt, aber langfristig, überlegen Sie sich einen Datenbank-Vergleichs-tool. Diese sind entworfen, um alles tun, die schweres heben, verlassen Sie frei, um den Fokus auf die Entwicklung der Arbeit. Ich benutze tools von Redgate. Sie haben eine Kostenlose Testversion. red-gate.com
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie die
MERGE
Befehl.Etwas wie dieses:
Wenn Sie möchten, aktualisieren Sie vorhandene Datensätze, die Sie kommentieren Sie die
UPDATE
Teil, und fügen Sie eine geeignete update-Klausel. Das gleiche mit dem Teil löschen.MERGE
Befehl !können Sie diese mit einem Links-outer-join auf die beiden Tabellen, um alle die Daten, dass ist nicht das gleiche. Diese Daten können Sie dann einfügen in Ihre Spalte
diese arbeiten konnte, auf der anderen Seite gibt es Werkzeuge für diese Art von Sachen