Quick-Tipp: Automatisierter Datenexport aus Microsoft SQLExpress-Datenbank

Einmal angenommen, Sie nutzen für Ihre Datenbank(en) den Microsoft SQL-Server in der Express Edition. Und einmal angenommen, Sie möchten Daten zeitgesteuert / automatisiert in z. B. eine CSV-Datei exportieren. Und ebenfalls angenommen Sie wissen nicht, wie das funktionieren soll? Dann sollten Sie hier weiterlesen!

Im folgenden Quick-Tipp zeige ich Ihnen, wie sie per sqlcmd (Kommandozeilen-Hilfsprogramm für SQL-Befehle) und der Windows-Aufgabenplanung ganz einfach Daten aus einer SQL-Express-Datenbank in eine CSV-Datei schreiben können.

Schritt 1: Aufgabe anlegen
Über die Windows-Aufgabenplanung wird eine neue, einfache Aufgabe mit dem gewünschten Trigger / Zeitplan erstellt.
Als Aktion wird nach der Festlegung des Zeitplans „Programm starten“ gewählt:

1_sqlcmd

Schritt 2: SQLCMD mit Parametern versehen
Als Programm / Skript gibt man nun sqlcmd in die entsprechende Zeile des Dialogs ein.
Alle weiteren Angaben folgen in der Zeile Argumente hinzufügen (optional), z. B.

2_sqlcmd

Die Parameter in Einzelnen:

  • -h-1: Es werden keine Spaltennamen übergeben
  • -s localhost: Der Servername auf dem die Datenbank liegt (-> s. hierzu auch dieser Microsoft-Artikel)
  • -d DATENBANKNAME: Angabe der Datenbank
  • -q: Die auszuführende Abfrage (Diese ist hier in den Befehl exit gekapselt, damit der Task nach der Ausführung sofort beendet wird. Die Angabe set nocount on bewirkt, dass die Trefferanzahl (xxx rows affected) nicht in die CSV-Datei geschrieben wird)
  • -o: Hier wird der Pfad und der gewünschte Dateinamen für den Export angegeben

Das oben angegebene Beispiel würde also auf der lokalen Maschine, aus der Datenbank DATENBANKNAME (wie sinnvoll ;-)) alle Werte aus der Spalte angebotsnummer aus der Tabelle ERPDATEN nach Angebotsnummer aufsteigend sortiert in die Datei Angebote.csv exportieren.

Alle verfügbaren Parameter für sqlcmd können, wie immer, durch Eingabe von sqlcmd /? in der Eingabeaufforderung angezeigt werden.

Sie haben das letzte Wort!

Mit dem Absenden Ihres Kommentars willigen Sie ein, dass der angegebene Name im Zusammenhang mit Ihrem Kommentar und ggf. Ihrer Website gespeichert wird. Die angegebene E-Mail-Adresse wird nicht veröffentlicht!

Mehr in Allgemein, Quick-Tipp, Snippets
Backup
Gewinnspiel: EaseUs Todo Backup Home 9.2

Review der Home-Version von EaseUs Todo Backup 9.2 und Verlosung von drei Lizenzen.

Schließen