Frage

Unsere Kunden verwenden Sie SQLServer/Oracle-Datenbanken.Über die Jahre, wir haben gesendet viele update-Skripte, die Sie manuell ausführen.Die meisten der Zeit, alles ging glatt, aber jedes jetzt und dann ein Skript lief nicht bis zum Ende vollständig oder hatte einige Fehler drin (die man nicht erkannt, die zum Zeitpunkt der Aktualisierung).Auch, manchmal sogar "intelligente Benutzer" Hinzugefügt Indizes/Tabellen in diesen Datenbanken selbst, für was auch immer Grund.Später auf, diese Unregelmäßigkeiten zu Problemen führen.

Jetzt habe ich damit beauftragt worden, herauszufinden, einen Weg, um zu überprüfen/zu validieren unsere Kunden Datenbanken, die gegen unsere eigene Datenbank-schema (Tabellen, Datentypen, Indizes, Ansichten, ...).Die Ausgabe sollte eine Art von Unterschied-Datei, die angibt, was fehlt/was nicht in der Datenbank.Ich könnte das im code (C++) von innerhalb unserer Anwendung, oder kann ich ein externes tool für genau diesen Zweck.

Bevor ich jetzt mit dem Programmieren beginnen, ich wollte Fragen ob es schon ein tool gibt, das würde die nötigen Ergebnisse erzielen, oder zumindest könnte mir helfen zu produzieren eine anständige xml Datei von unserer master-Datenbanken (Oracle und SQL Server)?Oder gibt es eine Bibliothek, die mir helfen konnte, schreib mein eigenes Werkzeug?

War es hilfreich?

Lösung

Ich habe diese Technik benutzt vor, und es nicht erfordern den Kauf jedes Werkzeug.

Enterprise Manager hat ein "Skript Erstellen" - Funktion.Führen Sie dies auf eigene Referenz-Datenbank und die Datenbank für den Vergleich.Wählen Sie die entsprechenden Optionen zum generieren von Skripts für die Objekte, die Sie interessieren.Als Nächstes vergleichen Sie einfach die beiden generierten Dateien mit Ihrem Lieblings-diff-tool.

Sie können ein ähnliches Verfahren mit Oracle-tools, mit denen Sie exportieren, die DDL-Skripts.

Andere Tipps

Es gibt drei Möglichkeiten, mit Hilfe von Red Gate ' s tools:

  1. Haben Ihre Kunden den Vergleich ausgeführt.Würden Sie brauchen, um zu überzeugen Kunden zu kaufen, eine Lizenz für SQL Vergleichen Sie und senden Sie ein schema snapshot Ihrer Datenbank.
  2. Schreiben Sie eine eigene Anwendung mit Hilfe von Red Gate SQL Comparison SDK ($595 für 10 Distributionen), die ausgeführt werden können auf der client-Seite.
  3. Fragen Sie Ihren Kunden zu senden Sie eine snapshot-schema und führen Sie den Vergleich selbst mit dem eigenen Kopie von SQL Vergleichen.Red Gate versorgt eine Kostenlose schema snapshot-tool SQL Snapper erstellen snapshots können, dann werden Ihnen per E-Mail die von Ihrem Kunden.Als dies schließt keine Daten, kann es etwas sein, was Ihr Kunde bereit ist zu berücksichtigen.

Die SQL-Snapper-tool und SQL Comparison SDK Beispielcode heruntergeladen werden kann von unserer labs.red-gate.com website.

Oracle-Kompatibilität ist jetzt in form einer Early-Access-Build.Wenn Sie interessiert sind oder möchten, um zu versuchen, das tool besuchen Sie die Produktseite.Sie können diese nach Gebrauch freier, bis die vollständige Version des Tools.

David Atkinson, Produkt-Manager, Red Gate Software.

Wir verwenden Redgate SQL Vergleichen, die für dieses und es diente uns gut über die Jahre.

Wir verwenden auch Redgate SQL Daten Vergleichen für den Vergleich der Inhalte von lookup-Tabellen.

Die Leute bei redgate, ein großartiges Werkzeug genannt SQL Vergleichen.

Können Sie ein schema erstellen, wie MySQL dump s ZEIGEN SIE TABELLEN ERSTELLEN?

Wenn Sie auf windoof habe ich verwendet Erweiterte Abfrage-Tool für Jahre, und kann bezeugen, dass für das Geld, es tut mehr als alles andere.Insbesondere, es wird generieren Sie ein diff-report-zwischen Datenbanken.Es ist ODBC/VB6 und kann gegen Dutzende von Datenbanken.Check it out.(Nein, ich bin nicht der QueryTool, noch habe ich irgendein Teil von ihm, nur ein glücklicher Kunden.)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top