2008-12-18 9 views
5

Ich habe meine Entwicklungsdatenbank aus der Produktion wiederhergestellt, und die gespeicherten Prozeduren, die ich in meiner Entwicklungsumgebung benötige, sind in meiner Produktionsdatenbank nicht vorhanden. Gibt es einen Befehl, den ich verwenden kann, um die gespeicherten Prozeduren in SQL Server zu importieren? Es gibt ungefähr 88 Dateien, da sich jede Prozedur in einer anderen Textdatei befindet.Importieren von vorhandenen gespeicherten Prozeduren in SQL Server

TIA! Chris

Antwort

9

Hoppla, Sie haben die schmerzhafte Art der Skripterstellung erstellt. Sie sollten ein einzelnes Skript für alle Prozeduren erstellt haben, indem Sie mit der rechten Maustaste auf die Datenbank in SSMS geklickt haben, indem Sie Aufgaben -> Skripte erstellen ausgewählt haben. diese alten Batch-Datei Tage

Wenn Sie jedoch wieder durch diesen Prozess nicht gehen wollen, öffnen Sie eine cmd-Shell in den Ordner auf und denken Sie daran:

for %f in (*.sql) do sqlcmd -i %f 

Dies sollte es tun! Sie könnten bei Bedarf weitere Parameter zu sqlcmd hinzufügen (z. B. Login, Passwort, Servername, ...). Um eine Liste der Schalter zu sehen, tun Sie einfach eine sqlcmd -h.

0

Klicken Sie mit der rechten Maustaste auf die Entwicklungsdatenbank Hit Generate SQL Scripts und wählen Sie dann nur gespeicherte Prozeduren aus. Wenn Sie eine zusätzliche Filterung benötigen, können Sie sogar die gespeicherten Prozeduren auswählen, die Sie nicht möchten.

Dann nur diese Abfrage auf Entwicklung ausführen.

0

Ich weiß nicht, ob es eine Befehlszeile Weg, es zu tun, aber wenn Sie sie alle in Textdateien haben, sollte es überhaupt nicht schwierig sein, eine schnelle und schmutzige App zu schreiben, die nur alle durchläuft die Dateien und führt die create-Anweisungen auf Ihrem Produktionsserver in der von Ihnen gewählten Sprache aus.

1

Für SQL 2K & 2K5 möchten Sie this tool.

Ich fragte eine ähnliche Frage vor einer Weile und bekam diesen Rat von Mike L (gib ihm Stimmen here).

+0

Tolles Werkzeug ... Nicht wirklich, wonach ich suche. Danke für die Hilfe – Chris

0

Wenn Sie wie ich mit einer Menge von SQL-Dateien in einer Hierarchie von Ordnern umgehen müssen, wird dieser eine Liner sie in eine einzige Datei namens out.sql kombinieren, die Sie leicht in SQL Management Studio ausführen können. Es enthält nur Dateien, die in .sql enden und Dateien wie * .sqlsettings ignorieren.

Führen Sie es aus dem Stammordner der Hierarchie der .SQL-Dateien. Stellen Sie sicher, dass Sie in out.sql nichts Wertvolles haben, da es ersetzt wird.

del out.sql && for /f %f in ('dir /b /s ^| findstr /E \.sql') do type %f >> out.sql 
1
  1. Rechtsklick auf die Datenbank aus, wo Sie wollen, dass die Daten
  2. Select Datenübertragung übertragen
  3. Select Tabellen oder Shop Procedure (was Sie übertragen möchten)
  4. Wählen Sie den Speicherort, an den Sie die Daten übertragen möchten (entweder auf dem Server oder auf dem lokalen Host oder in einer Datei)
Verwandte Themen