---
title: "Die Verbindung von DatabaseSpy mit einer SQL Azure-Datenbank in der Cloud herstellen"
date: "2010-07-01"
tags: 
  - "database-tool"
  - "databasespy"
  - "sql-server"
  - "tech-ed"
description: Entdecken Sie, wie Sie DatabaseSpy mit einer SQL Azure-Datenbank verbinden, wie Sie Datenbankmigrationen verwalten und wie Sie häufige Probleme beheben, die bei der Integration von Cloud-Datenbanken auftreten können.
---
Status: #blog

Tags:  #database-tool #databasespy #sql-server #tech-ed

Categories: [Altova](/blog/de/category/altova.md) 
# Die Verbindung von DatabaseSpy mit einer SQL Azure-Datenbank in der Cloud herstellen

Tipps und Techniken zur einfachen Integration der cloudbasierten SQL Azure-Datenbank von Microsoft in Produktionsumgebungen standen im Mittelpunkt der Tech-Ed-Konferenz im Juni in New Orleans. SQL Azure basiert auf Microsoft SQL Server-Technologien und ist darauf ausgelegt, einen hochverfügbaren und skalierbaren Datenbankdienst bereitzustellen, der von Microsoft in der Cloud gehostet wird. Entwickler, die Datenbanken in SQL Azure bereitstellen, müssen keine relationale Datenbanksoftware installieren, konfigurieren, aktualisieren oder verwalten, sondern lediglich ihre eigene Datenbankstruktur und Inhalte. Automatische Redundanz und Fehlertoleranz sind integriert, und es ist keine manuelle Administration erforderlich. 

Sie können eine manuelle Verbindungszeichenfolge erstellen und die SQL Server-Syntax sowie Datentypen verwenden, um [DatabaseSpy](https://www.altova.com/de/databasespy.html) und [andere Altova-Tools](https://www.altova.com/de/solutions/database-tools.html) mit SQL Azure-Datenbanken zu verbinden, um typische Aufgaben der Datenbankentwicklung und -wartung durchzuführen. Dieser Blogbeitrag zeigt, wie man von DatabaseSpy aus eine Verbindung zu einer SQL Azure-Datenbank herstellt, und demonstriert verschiedene typische Operationen, die Sie möglicherweise durchführen möchten, wenn Sie eine bestehende Datenbank in die Cloud migrieren. Um diese Schritte selbst durchzuführen, benötigen Sie ein SQL Azure-Konto oder einen Benutzernamen und ein Passwort, die von einem Inhaber eines SQL Azure-Kontos erstellt wurden. Für weitere Informationen zur Einrichtung eines SQL Azure-Kontos besuchen Sie bitte die Microsoft-Website [Startseite von SQL Azure](http://msdn.microsoft.com/en-us/azure/sqlazure/default.aspx). Sie müssen außerdem den [SQL Server Native Client 10.0](http://msdn.microsoft.com/en-us/library/ms131321.aspx) (oder eine neuere Version) installieren. SQL Azure verhält sich nicht exakt wie eine lokale SQL Server-Datenbank, daher können wir den Altova SQL Server-Verbindungsassistenten nicht verwenden. Stattdessen werden wir eine ODBC-Verbindung verwenden. 

[![Dialogfenster für die ODBC-Verbindung in DatabaseSpy](https://lh5.ggpht.com/_REdrfeVqYdU/TCufLyT6UKI/AAAAAAAAAKI/2GXVaQshqsM/tn23_01_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy ODBC Connection Dialog")](http://lh6.ggpht.com/_REdrfeVqYdU/TCufLuJMxEI/AAAAAAAAAKE/s2TpUrv90uA/s1600-h/tn23_01%5B4%5D.gif) 

Wir werden hier nicht alle Details des Prozesses zur Erstellung einer neuen Verbindungszeichenfolge erläutern. Sie können eine bestehende Verbindungszeichenfolge in das oben gezeigte Dialogfenster einfügen.

Nachdem Sie sich zum ersten Mal mit SQL Azure verbunden haben, ermöglicht eine DatabaseSpy-Projektdatei, alle Ihre Verbindungseinstellungen zusammen mit häufig verwendeten SQL-Skripten, Datenbankdesign-Dateien und Datenbankvergleichen in einer praktischen Sammlung zu speichern, die Sie später wiederherstellen können. Der Screenshot unten zeigt ein neues DatabaseSpy-Projekt, das gleichzeitig zwei Datenbanken verbindet: Sakila in MySQL und Sakila in der Cloud in SQL Azure. 

[![Hilfefenster für das DatabaseSpy-Projekt](https://lh5.ggpht.com/_REdrfeVqYdU/TCufMjbPtjI/AAAAAAAAAKQ/fS_AUAY_9Z8/Compare%201_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Project Helper Window")](http://lh5.ggpht.com/_REdrfeVqYdU/TCufMdJkgTI/AAAAAAAAAKM/_QSKYzv0bec/s1600-h/Compare%201%5B4%5D.gif) 

Microsoft bietet eine Reihe von Konvertierungstools an, die Benutzern dabei helfen, bestehende Datenbanken auf die SQL Azure-Plattform zu migrieren. Wir haben den Microsoft [SQL Server Migration Assistant for MySQL](http://www.microsoft.com/downloads/details.aspx?FamilyID=0e6168b0-2d0c-4076-96c2-60bd25294a8e&displaylang=en) verwendet, um unsere lokale MySQL-Beispieldatenbank Sakila in unser SQL Azure-Konto zu konvertieren. DatabaseSpy ermöglicht es Benutzern, mehrere Verbindungen gleichzeitig zu öffnen, auch zu Datenbanken unterschiedlicher Typen. Die Datenbankvergleichsfunktion von DatabaseSpy macht es zu einem idealen Werkzeug, um die Ergebnisse der Sakila-Konvertierung zu überprüfen. Zunächst öffnen wir einen Datenbank-Schema-Vergleich und wählen einige Tabellen aus der MySQL-Datenbank für die linke Seite des Vergleichs aus. 

[![Dialog zur Auswahl und zum Vergleich von Datenbanken](https://lh6.ggpht.com/_REdrfeVqYdU/TCufNE4eOHI/AAAAAAAAAKY/pgXiSLJ_wXA/Compare%202_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Comparison Selection Dialog")](http://lh4.ggpht.com/_REdrfeVqYdU/TCufM6yZIQI/AAAAAAAAAKU/Btk68j9iQDY/s1600-h/Compare%202%5B4%5D.gif) 

Nachdem wir die entsprechenden Tabellen aus der SQL Azure-Version ausgewählt haben, werden diese in einem Fenster zur Datenbank-Schema-Vergleichsanzeige geöffnet. 

[![DatabaseSpy: Schema-Vergleich](https://lh4.ggpht.com/_REdrfeVqYdU/TCufNyt1dMI/AAAAAAAAAKg/S2qbtTidi5I/Compare%203_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Schema Comparison")](http://lh4.ggpht.com/_REdrfeVqYdU/TCufNixS44I/AAAAAAAAAKc/4JElxf6ZDSY/s1600-h/Compare%203%5B4%5D.gif) 

Wenn wir auf den grünen "Vergleichen"-Button in der oberen linken Ecke des Fensters klicken, vergleicht DatabaseSpy die Datenbankstrukturen, hebt Unterschiede hervor und erstellt eine Zusammenfassung, die im Nachrichtenfenster angezeigt wird. 

[![DatabaseSpy: Schemakomparierung mit Anzeige der Unterschiede](https://lh4.ggpht.com/_REdrfeVqYdU/TCufPGxojBI/AAAAAAAAAKo/laurJr68vX8/Compare%204_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Schema Comparison with Differences")](http://lh3.ggpht.com/_REdrfeVqYdU/TCufOBsbJrI/AAAAAAAAAKk/AYlEquPw-lQ/s1600-h/Compare%204%5B4%5D.gif) 

Einige Unterschiede stellen Datentypdefinitionen dar, die sich zwischen verschiedenen Datenbanken unterscheiden. Beispielsweise hat der MySQL-Datentyp "unsigned small int" kein exaktes Äquivalent in SQL Server. Daher hat das Konvertierungstool den Datentyp "int" für die Spalte "film_id" in der Tabelle "film" verwendet. Außerdem wurde der Datentyp "year", der in MySQL für die Spalte "release_year" verwendet wird, in SQL Azure in "smallint" umgewandelt. Ich vermute, dass dies die SQL Azure-Version der Datenbank zukunftssicherer macht, da sie Filme bis zum Jahr 32.767 verarbeiten kann, im Gegensatz zu 2155, was der maximale Wert des Datentyps "year" in MySQL ist! Wir können die Daten in den beiden Datenbanken vergleichen, indem wir im Kontextmenü einen Eintrag auswählen, wodurch die ausgewählten Tabellen in einem neuen Fenster zur Datenvergleichsanzeige geöffnet werden. 

[![Datenbank-Spy: Kontextmenü für Vergleiche](https://lh3.ggpht.com/_REdrfeVqYdU/TCufP3dYyYI/AAAAAAAAAKw/AgpXSG9shps/Compare%205_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Comparison Context Menu")](http://lh6.ggpht.com/_REdrfeVqYdU/TCufPiZEFaI/AAAAAAAAAKs/hYOu8AvEs0c/s1600-h/Compare%205%5B4%5D.gif) 

Der Datenvergleich zeigt, dass die Inhalte der Tabellen nicht identisch sind. 

[![Inhaltsvergleich von Datenbanken mit DatabaseSpy](https://lh3.ggpht.com/_REdrfeVqYdU/TCufQj2pQTI/AAAAAAAAAK4/iedHL3kDohM/Compare%206_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Content Comparison")](http://lh3.ggpht.com/_REdrfeVqYdU/TCufQOmH8jI/AAAAAAAAAK0/WOs9sgJRIxw/s1600-h/Compare%206%5B4%5D.gif) 

Wenn wir das Ergebnisfenster öffnen, stellen wir fest, dass die Spalte mit den Beschreibungen nicht erfolgreich übertragen wurde. 

[![Inhaltsvergleich von Datenbanken mit Ergebnissen](https://lh6.ggpht.com/_REdrfeVqYdU/TCufRZY5fYI/AAAAAAAAALA/cIbfxoR8n8M/Compare%206a_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Content Comparison with Results")](http://lh4.ggpht.com/_REdrfeVqYdU/TCufQ3sdyUI/AAAAAAAAAK8/wo8YQH1GPPs/s1600-h/Compare%206a%5B4%5D.gif) 

Wenn wir uns das Fenster "Datenbankschema-Vergleich" erneut ansehen, können wir feststellen, dass die Länge der Spalte "Beschreibung" auf Null gesetzt wurde. Dies erklärt die roten Pfeile, die im Ergebnisfenster von der Spalte "Beschreibung" in MySQL zur Spalte "Beschreibung" in SQL Azure zeigen. Wir können keinen Text in eine Spalte mit einer festgelegten Länge von Null einfügen. Öffnen wir stattdessen die SQL Azure-Version der Tabelle "Film" in einem neuen Designfenster. 

[![DatabaseSpy: Grafische Designansicht](https://lh3.ggpht.com/_REdrfeVqYdU/TCufSDh77CI/AAAAAAAAALI/O6EJCwm9aAs/Compare%207_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Graphical Design View")](http://lh5.ggpht.com/_REdrfeVqYdU/TCufRp27G0I/AAAAAAAAALE/tqAUWY7CPiQ/s1600-h/Compare%207%5B4%5D.gif) 

Wir können die Größe des Beschreibungsfelds im Eigenschaftenfenster erhöhen und anschließend das resultierende Änderungsskript ausführen. 

[![Hilfe-Fenster für die grafische Gestaltung von Datenbankobjekten in DatabaseSpy](https://lh3.ggpht.com/_REdrfeVqYdU/TCufSxioHUI/AAAAAAAAALQ/XoBfYWngEpg/Compare%208_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Graphical Design Properties Helper Window")](http://lh5.ggpht.com/_REdrfeVqYdU/TCufSeBoTvI/AAAAAAAAALM/-5AGg9auKgU/s1600-h/Compare%208%5B4%5D.gif) 

[![Skript zur Änderung der Datenbankstruktur in DatabaseSpy](https://lh3.ggpht.com/_REdrfeVqYdU/TCufUGt3eiI/AAAAAAAAALY/R4dv-V2QgO8/Compare%209_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Database Structure Change Script")](http://lh4.ggpht.com/_REdrfeVqYdU/TCufTAQc5JI/AAAAAAAAALU/xxJcrOJkTjo/s1600-h/Compare%209%5B4%5D.gif) 

Als Nächstes, wenn wir den Datenvergleich erneut durchführen, stellen wir fest, dass die Daten zwar konvertiert wurden, aber die zuvor definierte Feldlänge von Null dazu geführt hat, dass die Daten unsichtbar sind. 

[![Inhaltsvergleich von Datenbanken mit Ergebnissen](https://lh6.ggpht.com/_REdrfeVqYdU/TCufUstU4FI/AAAAAAAAALg/RkOJTSWx2mA/Compare%2010_thumb%5B2%5D.gif?imgmax=800 "DatabaseSpy Content Comparison with Results")](http://lh5.ggpht.com/_REdrfeVqYdU/TCufUepo9KI/AAAAAAAAALc/tHSQeZyaeFI/s1600-h/Compare%2010%5B4%5D.gif) 

**Probleme mit der Antwortzeit** Sie können DatabaseSpy verwenden, um Probleme mit der Antwortzeit zwischen der Cloud-Datenbank und der lokalen Kopie zu untersuchen. Wie aus dem oben gezeigten Datenvergleich hervorgeht, enthalten die Tabellen mit den Filmdaten in den beiden Datenbanken jeweils 1.000 Zeilen mit identischen Daten. Wir können wiederholt SELECT-Anweisungen ausführen, um die Daten sowohl aus SQL Azure als auch aus der lokalen MySQL-Datenbank abzurufen und die Ergebnisse zu messen. Das Nachrichtenfenster des SQL-Editors von DatabaseSpy zeigt die Ausführungszeit an. 

[![Ausführungszeit von SQL Azure-Abfragen](https://lh5.ggpht.com/_REdrfeVqYdU/TCufVfSAhaI/AAAAAAAAALo/VNLkRWIysP8/Compare%2011_thumb%5B2%5D.gif?imgmax=800 "SQL Azure Query Execution Time")](http://lh3.ggpht.com/_REdrfeVqYdU/TCufVMdD1hI/AAAAAAAAALk/QtJfweyzCgw/s1600-h/Compare%2011%5B4%5D.gif) 

Die Ausführung der oben genannten SELECT-Anweisung fünfmal hintereinander in der SQL Azure-Version der Datenbank "sakila" ergab Ergebnisse zwischen 60,632 Sekunden und 63,851 Sekunden. Die Ausführung derselben SELECT-Anweisung für die gleiche Tabelle mit Filminformationen in der lokalen MySQL-Datenbank lieferte folgendes Ergebnis: 

[![Ausführungszeit von SQL Server-Abfragen](https://lh3.ggpht.com/_REdrfeVqYdU/TCufWFGbw5I/AAAAAAAAALw/kmpjFre4XzQ/Compare%2012_thumb%5B2%5D.gif?imgmax=800 "SQL Server Query Execution Time")](http://lh5.ggpht.com/_REdrfeVqYdU/TCufVqTzDjI/AAAAAAAAALs/vEAzXCCR3E0/s1600-h/Compare%2012%5B4%5D.gif) 

Die wiederholte Durchführung des Tests für die lokale Version ergab ähnliche Ergebnisse. Für Entwickler bedeutet dies, dass Ihre datenbankgesteuerte Anwendung wahrscheinlich Anpassungen erfordern wird, um die Latenz zu berücksichtigen, wenn Sie Ihre Daten in die Cloud verlagern. Testen Sie Ihre eigene Verbindung zu SQL Azure mit einer [kostenlosen Testversion von Altova DatabaseSpy](https://www.altova.com/de/download/databasespy/database_tool.html).
