2010-12-30 8 views
1

Angenommen, ich habe 100 SQL-Dateien und ich muss alle Dateien nacheinander nacheinander ausführen. Gibt es einen Ansatz dafür, die Skripte manuell auszuführen?SQL-Dateien automatisch ausführen

+0

Was diese Dateien tun? Wie groß sind sie? –

+0

Diese Dateien enthalten verschiedene Abfragen zum Erstellen, Einfügen, Aktualisieren, Ändern, Löschen von Tabellen. Und die maximale Größe der Datei beträgt 10 KB. – ANP

Antwort

3

Sie können eine Fledermaus-Datei schreiben sie sqlcmd Utility

+3

PowerShell-Skript wird wahrscheinlich auch funktionieren. –

1

Schreiben Sie ein Shell-Skript oder ähnliches, um sie nacheinander auszuführen.

1

Wir verwenden auszuführen haben großen Erfolg mit dem SQL Deploy Tool von SSW Australien hatte.

alt text

Es ist nicht kostenlos - aber jeden Cent wert, und spart so viel Zeit, lohnt es sich überhaupt in kürzester Zeit!

(Ich habe keine Verbindung mit SSW Australien andere als ein glücklicher Benutzer von SQL Deploy ist)

1
  • Rohr der dir /b > foo.txt Ausgabe in eine Datei
  • hinzufügen sqlcmd am Anfang jeder Zeile usw. mit ein anständiger Texteditor wie Notepad ++
0

Ihre Dateien Unter der Annahme sind so etwas wie folgt benannt:

001_my_script.sql 
002_another_script.sql 
003_foo_script.sql 
004_bar_script.sql 

Sie können in der Befehlszeile folgendes tun:

copy *.sql /a my_big_script.sql 

Und dann die resultierende Datei als ein Skript (über sqlcmd oder Management Studio) laufen.

1

Sie können hierfür PowerShell verwenden. Das folgende blog post beschreibt ein solches Skript. Als Teil des Foreach wird eine Pipe verwendet, um die Dateien so zu sortieren, wie Sie sie verarbeiten möchten. In diesem Beispiel wird es nach absteigendem alphabetischen Dateinamen sortiert, aber Sie können es auch nach anderen Attributen erstellen, z. B. dem Datum, an dem die Datei erstellt wurde.

Auch die folgenden blog post beschreibt, wie alle SQL-Dateien in einem Verzeichnis wie die oben verlinkten Beitrag laufen, aber ohne den Einsatz von Powershell

Verwandte Themen