T-SQL - Gibt es eine (kostenlose) Möglichkeit, Daten in zwei Tabellen zu vergleichen?

Ich habetable a undtable b. (SQL Server 2008)

Beide Tabellen haben genau das gleiche Schema.

Betrachten Sie für die Zwecke dieser Fragetable a = meine lokale Entwicklertabelle,table b = die Live-Tabelle.

Ich muss ein SQL-Skript erstellen (mitUPDATE/DELETE/INSERT -Anweisungen), die Tabelle b so aktualisieren, dass sie mit Tabelle a identisch ist. Dieses Skript wird dann in der Live-Datenbank bereitgestellt.

Gibt es kostenlose Tools, die das können, oder noch besser, wie ich es selbst machen kann?

Ich denke, ich muss wahrscheinlich eine Art Join für alle Felder in den Tabellen ausführen und dann darauf basierend dynamisches SQL generieren.

Hat jemand irgendwelche Ideen?

BEARBEITE

Okay, dachte, ich würde diese Frage ein wenig klären.

Die zu synchronisierende Tabelle ist eine einfache Nachschlagetabelle. Die Daten sind sehr einfach und unkompliziert.

Hier ist eine Idee von dem, wasTABLE A könnte so aussehen:

IdFoo          Activity      IsFoo
1              Foo           1
2              Bar           0

Hier ist eine Idee von dem, wasTABLE B könnte so aussehen:

IdFoo          Activity      IsFoo
1              Foo           1
2              Bar           1

rundsätzlich, alles was ich tun möchte, ist dasBIT Säule IsFoo) imTABLE B, um mit dem entsprechenden Wert in @ übereinzustimmTABLE A für das gleiche IdFoo.

Merken Sie sich

TABLE A ist auf meinem lokalen RechnerTABLE B ist auf dem Live-Server

Offensichtlich habe ich eine (zuverlässige) Sicherung vonTABLE B Auf meinem lokalen Computer, für den ich ein Skript erstellen muss, führen Sie das Skript dann auf dem Live-Server aus.

Die Tabelle hat auch referenzielle Integrität (andere Spalten, die ich nicht angezeigt habe). Was bedeutet, dass ich nicht einfach alles in @ löschen kaTABLE B und mache eine Einfügung vonTABLE A.

Dieses Skript ist einmalig. Also keine Notwendigkeit, Dinge wie Verbindungsserver, Replikation usw. zu tun. Schätzen Sie die Antworten, obwohl Jungs. =)

BEARBEITEN

Ok - also habe ich mich für Olegs Antwort entschieden (VS2010 Data Compare). Schnell, einfach und wirkt charmant.

Nicht zu sagen, die anderen Antworten sind falsch. Ich freue mich über alle Antworten!

Antworten auf die Frage(24)

Ihre Antwort auf die Frage