So exportieren Sie Daten von SQL Server nach Excel

Tabelle von SQL Server nach Excel exportieren

In einem früheren Artikel SQL und Excel: Warum Sie beides benötigen, haben wir gezeigt, dass für viele Unternehmen die Verwendung von SQL Server und Excel ein optimaler Ansatz für die Datenverwaltung ist. Für Organisationen, die SQL Server und Excel häufig verwenden, müssen häufig Daten von SQL Server nach Excel exportiert werden. Die häufigsten Gründe, um die Daten in Excel zu erhalten, sind:

  • Erstellen Sie Datenvisualisierungen wie Diagramme und Grafiken zur Verwendung in Berichten
  • Aggregieren oder analysieren Sie Daten in Pivot-Diagrammen
  • Sammeln Sie Daten aus mehreren Quellen zur weiteren Transformation
  • Stellen Sie die Daten Nicht-Datenbankbenutzern zur Ansicht oder Verarbeitung zur Verfügung

In diesem Artikel werden wir uns ansehen, wie so exportieren Sie Daten von SQL Server nach Excel. Die erste Methode verwendet den SQL Server-Import- und Exportassistenten, mit dem Daten in eine Reihe von Zieltypen exportiert werden können, nicht nur in Excel. Die zweite Methode verwendet native Funktionen in Excel. Die dritte Methode verwendet das SQL Anywhere-Add-In für Excel, das Funktionen bietet, die über den Exportprozess hinausgehen. Es gibt Vor- und Nachteile jeder Methode, die wir am Ende des Artikels zusammenfassen werden.

Methode (1): Exportieren mit dem SQL Server-Import- und Exportassistenten

Der SQL Server-Import- und Exportassistenten kann in SQL Server Management Studio oder als eigenständige Anwendung gestartet werden.

Klicken Sie in SQL Server Management Studio auf die Datenbank, aus der Sie Daten exportieren möchten. Wir verwenden die Demo-Datenbank in unserem Beispiel, also klicken Sie darauf und dann mit der rechten Maustaste und wählen Sie Aufgaben > Daten exportieren.

ssms_launch_export_wizard

Die Willkommensseite wird angezeigt, und Sie können fortfahren und auf ‚Weiter‘ klicken.

wizard_welcome

Wählen Sie im nächsten Bildschirm die Datenquelle aus. Um aus SQL Server zu exportieren, wählen Sie ‚SQL Server Native Client‘.

wizard_select_data_source

Sobald Sie ‚SQL Server Native Client‘ ausgewählt haben, werden die Details zur Datenquelle vom Assistenten ausgefüllt.

Klicken Sie auf ‚Weiter‘, um zum nächsten Bildschirm zu gelangen, in dem Sie das Ziel für den Export auswählen, das für uns Excel ist.

wizard_select_data_destination_excel

Wenn Sie Excel als Ziel auswählen, müssen Sie den Speicherort der Excel-Datei angeben. Wenn Sie dann auf ‚Weiter‘ klicken, wird möglicherweise die folgende Meldung angezeigt:

Der Vorgang konnte nicht abgeschlossen werden.
WEITERE INFORMATIONEN:
Die ‚Microsoft.ASS.OLEDB.16.0‘ provider ist nicht auf dem lokalen Rechner registriert. (System.Daten)

wizard_warning

Der Grund für diese Meldung ist, dass beim Starten des SQL Server-Import- und Exportassistenten aus SSMS eine 32-Bit-Version des Assistenten gestartet wird (da SSMS 32-Bit ist) und Ihr Betriebssystem 64-Bit ist. Weitere Informationen dazu gibt es hier.

Um dies zu umgehen, müssen Sie SSMS schließen und zum Windows-Startmenü gehen und im Startmenü nach der 64-Bit-Version des SQL Server-Import- und Export-Assistenten suchen. Beachten Sie, dass diese Version nur auf Ihrem Computer installiert wird, wenn Sie SQL Server installiert haben.

wizard_launch_from_start

Sobald die eigenständige Version des Assistenten gestartet wurde, können Sie die bisher beschriebenen Schritte ausführen, um die Quelle und das Ziel der Datenkopie anzugeben. Wir müssen nun definieren, was wir kopieren möchten, und (optional) den Kopiervorgang konfigurieren.

Nachdem Sie auf dem Bildschirm ‚Ziel auswählen‘ auf ‚Weiter‘ geklickt haben, geben Sie an, ob Sie eine oder mehrere vollständige Tabellen oder Ansichten oder eine Teilmenge von Daten über eine SQL-Abfrage exportieren möchten. In unserem Fall exportieren wir aus einer einzelnen Tabelle, sodass wir die Standardoption ausgewählt lassen können.

Als nächstes bearbeiten wir die Spaltenzuordnungen, indem wir auf die Schaltfläche ‚Zuordnungen bearbeiten …‘ klicken. Auf dem Bildschirm Spaltenzuordnungen können Sie Änderungen am Namen und Datentyp der Spalten vornehmen, die durch den Kopiervorgang in Excel erstellt werden. In unserem Beispiel ändern wir den Datentyp für die Spalte ‚order_date‘ von VarChar in DateTime . Wir lassen die anderen als Standard vom Assistenten festgelegt. Klicken Sie auf ‚Weiter‘. Der nächste Bildschirm im Assistenten fasst zusammen, dass die Quelle eine SQL-Tabelle mit dem Namen sales ist und das Ziel ein Blatt mit dem Namen ’sales‘ in der Excel-Arbeitsmappe ist. Sie können den Namen des Blattes nach Bedarf ändern.

Klicken Sie anschließend auf ‚OK‘, um den Dialog zu schließen, und dann auf ‚Weiter‘.

Wenn eine der angegebenen Zuordnungen beim Exportvorgang möglicherweise nicht erfolgreich ist, zeigt der SQL Server-Import- und Exportassistent die Seite Datentypzuordnung überprüfen an. Auf dieser Seite werden die Konvertierungen hervorgehoben, die der Assistent ausführen muss, um die von Ihnen angegebenen Zuordnungen zu verarbeiten. Es zeigt auch an, was der Assistent tun wird, wenn ein Fehler während der Konvertierung auftritt. Es kann entweder den Fehler ignorieren oder dazu führen, dass der Export fehlschlägt. In unserem Beispiel wurden mehrere Spalten markiert: diejenigen, in denen eine Konvertierung von nvarchar (max) in das Excel-Äquivalent, Long Text, erfolgt, und auch die Konvertierung von VarChar in DateTime für die Spalte ‚order_date‘. Die Standardeinstellung ist, dass der Assistent fehlschlägt, wenn ein Fehler vorliegt.

wizard_review_data_mapping

Hinweis: Dieser SQL-Import- und -Export-Assistent verwendet SSIS unter der Haube; mit anderen Worten, jedes Mal, wenn Sie den Assistenten ausführen, erstellen Sie ein SSIS-Paket. Aus diesem Grund haben Sie die Möglichkeit, es für die zukünftige Verwendung zu speichern.Klicken Sie auf ‚Weiter‘. Der Assistent bietet Ihnen nun zusätzlich zur Standardoption, die Kopie sofort auszuführen, die Möglichkeit, die Konfiguration des Assistenten als SSIS-Paket zu speichern.

Wir lassen einfach die Standardoption aktiviert und klicken dann auf die Schaltfläche ‚Weiter‘.

Der Assistent zeigt nun eine Zusammenfassung der Schritte an, die wir konfiguriert haben.

wizard_complete_the_wizard

Klicken Sie auf ‚Fertig stellen‘, und der Assistent zeigt nun den letzten Bildschirm an, der das Ergebnis der Ausführung ist. In unserem Fall war die Ausführung erfolgreich und wir können sehen, dass 5484 Datensätze in das Blatt ‚Abfrage‘ in unserer Excel-Arbeitsmappe kopiert wurden.

wizard_execution_successful

Wir können überprüfen, ob die Daten von SQL Server nach Excel exportiert wurden, indem wir die angegebene Datei öffnen und das Blatt ’sales‘ überprüfen.

sales_data_in_excel

Nachdem sich die Daten in Excel befinden, können wir einige Visualisierungen oder Aggregationen oder andere Verarbeitungen erstellen, die wir ausführen möchten. Zum Beispiel könnten wir ein Pivot-Diagramm erstellen, um die Summe pro Element pro Region anzuzeigen.

Methode (2): Exportieren mit nativen Funktionen in Excel

Obwohl die Methode selbst weitgehend gleich ist, hat Microsoft in den letzten Versionen Verbesserungen an der Art und Weise vorgenommen, wie Sie Daten aus anderen Quellen in Excel abrufen. Die wichtigste Änderung war das Hinzufügen der Power Query-Datenimport-Assistenten und -Tools als native Komponente in Excel 2016. Auf diese wird über den Power Query-Editor zugegriffen, obwohl sie im Excel-Menüband nicht als solche angezeigt werden. Stattdessen wird sie auf der Registerkarte Daten des Excel-Menübands als Get & Transform Data group gebrandmarkt.

excel_get_and_transform_data

Die unten beschriebenen Schritte gelten für Excel 2016 und darüber hinaus.

Um mit dem Export von SQL Server nach Excel zu beginnen, klicken Sie auf Data > Get Data > From Database > From SQL Server Database.

excel_getdata_fromsql

Sie werden als nächstes aufgefordert, den Datenbankserver einzugeben, mit dem eine Verbindung hergestellt werden soll, und optional eine Datenbank anzugeben. Wenn Sie keine Datenbank angeben, können Sie im nächsten Bildschirm aus den verfügbaren auswählen.

excel_specify_server

Klicken Sie auf ‚OK‘. Sie werden dann aufgefordert, Authentifizierungsdetails anzugeben. Der Standardwert ist Windows, so können Sie gehen Sie vor und klicken Sie auf ‚Verbinden‘.

excel_database_authentication

Im nächsten Bildschirm können Sie durch die Datenbanken und Tabellen auf dem angegebenen Datenbankserver navigieren. Klicken Sie auf die Datenbank ‚Demo‘, um sie zu erweitern, und dann auf die Tabelle ’sales‘. Die Daten für die ausgewählte Tabelle werden im rechten Fenster angezeigt. Wir könnten jetzt auf die Schaltfläche ‚Laden‘ klicken, um die Daten sofort in Excel zu übertragen. Alternativ können wir auf ‚Daten transformieren‘ klicken, um Transformationen der Daten durchzuführen (z. B. Datentypen ändern, einige Daten bereinigen, Berechnungen durchführen). In diesem Beispiel laden wir die Daten einfach so, wie sie sind.

excel_navigate_to_db

Die Daten werden nun aus der Tabelle in SQL Server exportiert und in ein neues Blatt in Excel geladen.

Das ist alles, was wir tun müssen, um einen einfachen Export einer vollständigen Tabelle von SQL Server nach Excel durchzuführen. Abgesehen von dem einfachen Verfahren, das wir hier beschrieben haben, bieten die Power Query-Datenimport-Assistenten und -Tools Möglichkeiten zum ‚Formen‘ der Daten aus externen Quellen. Sie können beispielsweise eine Spalte entfernen, einen Datentyp ändern und Tabellen zusammenführen, um Ihre spezifischen Anforderungen zu erfüllen.

Methode (3): Exportieren mit SQL Spreads Add-In für Excel

Wenn Sie das SQL Spreads Add-In für Excel noch nicht installiert haben, können Sie hier eine Kopie herunterladen.

Sobald SQL Server installiert ist, sehen Sie, dass es als neue Ribbon-Registerkarte hinzugefügt wurde.

sqlspreads_click_design_mode

Klicken Sie im Bereich SQL Server Designer auf der rechten Seite auf die Schaltfläche Bearbeiten, um das Dialogfeld SQL Server-Verbindung zu öffnen.

sqlspreads_editconnection

Geben Sie den Namen Ihres SQL Servers in das Feld SQL Server Name ein. Sie müssen auch eine Authentifizierungsmethode auswählen: Windows-Anmeldung (Windows-Authentifizierung) oder SQL Server-Authentifizierung (unter Verwendung eines in SQL Server eingerichteten Namens und Kennworts). Die Windows-Authentifizierung ist die sicherere der beiden Optionen.

sqlspreads_connection_details

Klicken Sie auf OK. SQL Server versucht, eine Verbindung zur Datenbank herzustellen. Wenn die Verbindung erfolgreich ist, werden Ihre Datenbanken im SQL Server Designer-Bereich angezeigt.

sqlspreads_designer_db_list

Wir können jetzt die Demo-Datenbank erweitern und die Verkaufstabelle auswählen.

Wenn Sie auf die Tabelle klicken, werden die Daten sofort aus SQL Server exportiert und in ein Blatt mit dem Namen ’sales‘ in Excel kopiert.

sqlspreads_sales_data_in_excel

Das war’s! Wir haben es geschafft, Daten mit nur wenigen Klicks von SQL Server nach Excel zu exportieren.

Im SQL Server Designer stehen uns mehrere weitere Optionen zur Verfügung. Zum Beispiel können wir:

  • filtern der aus SQL Server exportierten Daten
  • Festlegen, ob bestimmte Spalten angezeigt und/oder schreibgeschützt sind
  • Verwenden Sie einen Nachschlagewert, um Text anstelle einer ID für eine Spalte anzuzeigen
  • Daten sortieren
  • Nehmen Sie Aktualisierungen in Excel vor und speichern Sie Änderungen in SQL Server

Wir werden uns einige dieser Optionen in einem zukünftigen Blogbeitrag ansehen.

Zusammenfassung

Die Möglichkeit, Daten von SQL Server nach Excel zu exportieren, ist in den meisten Unternehmen eine häufige Anforderung. Wir haben uns drei Methoden angesehen, um diese tägliche Aufgabe auszuführen. Der erste verwendet den SQL Server-Import- und Exportassistenten, der eine native Funktionalität in SQL Server darstellt. Die zweite Methode verwendet die nativen Tools ‚Get & Transform‘ in Excel. Die dritte verwendet das SQL Server-Add-In für Excel.

Welche Methode sollten Sie also verwenden?

Wenn Sie normalerweise mit Datenbanken arbeiten und SSMS Ihr zweites Zuhause ist, werden Sie wahrscheinlich das Gefühl haben, dass der SQL Server-Import- und Export-Assistent die beste Option für Sie ist. Wenn Sie ein Excel-Benutzer sind, ist es sinnvoll, in Excel selbst zu arbeiten, um Daten aus SQL Server zu exportieren. Die beiden Excel-Optionen, die wir uns angesehen haben, sind robust und einfach zu bedienen, aber SQL Server hat einen deutlichen Vorteil, da Benutzer Daten direkt in Excel aktualisieren und die Daten dann wieder in SQL Server speichern können. Dies ist ein großer Vorteil für Unternehmen, die das Beste aus beiden Welten mögen: die Benutzerfreundlichkeit und Vertrautheit von Excel mit der Leistung und Datenintegrität von SQL Server.

Testen Sie SQL Server, um zu sehen, wie schnell und einfach es ist, Daten von SQL Server nach Excel zu exportieren.

Andy
Artikel von

Andy McDonald

Andy hat mehr als 20 Jahre in den Bereichen Engineering, Finanzen und IT mit Datenanalyse und -präsentation mit Tools wie SQL Server, Excel, Power Query und Power BI gearbeitet.

Schreibt für SQL Server über Excel und SQL Server und wie man diese beiden miteinander verbindet.

Leave a Reply

Deine E-Mail-Adresse wird nicht veröffentlicht.