Benutzer mit den meisten Antworten
SQL Tabelle von einer Datenbank zur anderen kopieren

Frage
-
Hallo Community,
ich habe eine kurze Frage.
Ist es Möglich eine SQL Tabelle von einer Datenbank zu einer anderen zu kopieren.
Per Skript oder ähnliches, nach dem die SQL Tabelle kopiert wurde, sollen zu einem späteren Zeitpunk nur noch die Tabellenreihen die sich geändert haben von der Quelldatenbank zur Zieldatenbank kopiert werden.Später sollen dann nur noch von dem Quellserver Reihen kopiert werden die nicht auf dem Zielserver vorhanden sind, die Reihe besitzt einen Primary Key und heisst zv: KFZidQuellserver: SQl Server 2005Zielserver: SQL Server 2000
Wie realisiert man sowas am einfachsten ?
Viele Danke
Antworten
-
Uebrigens macht es nicht wirklich Sinn, ein und dieselbe Frage in mehrere MS Foren gleichzeitig zu stellen, da die meisten Teilnehmer eh allen folgen. Das macht es für alle schwieriger, den verschiedenen Kommunikationssträngen zu folgen. So wie in diesen Fall, wo ich mir die Antwort hätte sparen können, da Du bereits hier http://social.technet.microsoft.com/Forums/de-DE/sqlserver/thread/f5254d19-65d1-493f-b083-89eb1912f808 ähnliche erhalten hast.
-- Frank Kalis Microsoft SQL Server MVP Webmaster: http://www.insidesql.org- Als Antwort markiert Robert BreitenhoferModerator Mittwoch, 18. Mai 2011 14:01
Alle Antworten
-
Das ist eine durchaus übliche Anforderung, die recht häufig nachgefragt wird und zu der es verschiedenste Ansätze gibt. Unter anderem:
- Einen Verbindungs-Server zwischen beiden Instanzen einrichten und einen Prozedur über den SQL Agent steuern lassen, die ein INSERT INTO SQL Server 2000 SELECT .... FROM SQL Server 2005 WHERE NOT EXISTS SQL Server 2000. KFZid = SQL Server 2005.KFZid macht
- Ein SSIS Paket, welches vom Prinzip her das Gleiche wie 1) macht
Falls Du auch noch evtl. die Aenderungen aus SQL Server 2005 in SQL Server 2000 bringen willst, kämen evtl. noch Szenarien wie Replikation, Log Shipping, etc... in Betracht.
Abhängig von Deinen Anforderungen, würde ich einfach mal in bisschen im Internet stöbern. Da solltest Du brauchbare Lösungen finden, die ohne grossen Anpassungsbedarf funktionieren.
-- Frank Kalis Microsoft SQL Server MVP Webmaster: http://www.insidesql.org -
Uebrigens macht es nicht wirklich Sinn, ein und dieselbe Frage in mehrere MS Foren gleichzeitig zu stellen, da die meisten Teilnehmer eh allen folgen. Das macht es für alle schwieriger, den verschiedenen Kommunikationssträngen zu folgen. So wie in diesen Fall, wo ich mir die Antwort hätte sparen können, da Du bereits hier http://social.technet.microsoft.com/Forums/de-DE/sqlserver/thread/f5254d19-65d1-493f-b083-89eb1912f808 ähnliche erhalten hast.
-- Frank Kalis Microsoft SQL Server MVP Webmaster: http://www.insidesql.org- Als Antwort markiert Robert BreitenhoferModerator Mittwoch, 18. Mai 2011 14:01
-
Hallo Frank,
das tut mir wirklich leid, aber ich hatte es ja oben beschrieben. War ein Fehler, passiert nicht nochmal. Deine Antwort war wirklich hilfreich und das ist der Ansatz den ich auch bis jetzt habe. Ich muss nur noch den Linkedserver zum laufen bekommen.
Meine Query:
use test;
go
insert into test.dbo.info (jobid) select test2.dbo.info.jobid from test2.dbo.info where jobid != jobid
ich habe nochmal eine Frage zu dem Linkedserver:
wenn ich den fertig eingerichtet habe. muss ich vor jedem Datenbanknamen den Servernamen dazu schreiben oder wie spreche ich den dann an ?
-
Du hast eine Antwort auf diese Frage in dem anderen Thread. :-)
-- Frank Kalis Microsoft SQL Server MVP Webmaster: http://www.insidesql.org- Bearbeitet Frank Kalis Freitag, 8. April 2011 11:25 Typo