Windows Batch -- SQL Prompt
Paul
- datenbank
Hallo liebe Forum-User,
ich besitzte ein Oracle 10g XE Datenbank. Ich würde gerne eine Batsch-Datei laufen lassen, die SQLPLUS startet und anschließend einige Befehle ausführt.
Wenn ich nun meine Batch-Datei starte, bleibt im DOS-Fenster nur der SQL-Prompt stehen und er macht keine Verarbeitung des Batches mehr.
Wisst ihr wie man trotzdem SQL-Befehle eingeben kann via Batch-Script.
Vielen Dank im Voraus.
Hallo Paul,
Wenn ich nun meine Batch-Datei starte, bleibt im DOS-Fenster nur der SQL-Prompt stehen und er macht keine Verarbeitung des Batches mehr.
das letzte DOS-Fenster hab' ich vor vielen Jahren unter Windows 98 gesehen, der Kommandointerpreter unter Windows-NT-artigen Betriebssystemen führt standardmäßig reinrassige 32-Bit-Windows-Befehle aus. Ich vermute, dass SQLPLUS ebenfalls ein 32-Bit-Programm und unter DOS überhaupt nicht lauffähig ist.
SQL-Engines füttert man an der Kommandozeile oft mit SQL-Dateien, vielleicht ist das bei Oracle (was ich im Moment grade nicht installiert hab') auch so.
Helfen Dir CALL oder START weiter?
Freundliche Grüße
Vinzenz
Hallo Vinzenz,
vielen Dank für deinen Tipp:
SQL-Engines füttert man an der Kommandozeile oft mit SQL-Dateien,
Ich brauche aber eine Eingabe während meines SQL-Skripts. Weißt du oder jemdand wie man dies hinbekommt?
Batch:
@echo OFF
echo Testbatch
sqlplus /nolog
connect user/123@db
set serverout on size 100000
set /p benutzername=Benutzername:
set passwort=%benutzername:~0,3%567
exec dlt_user.set_password( '%benutzername%', '%passwort%' )
PAUSE
@echo ON
connect %benutzername%/%passwort%@db
PAUSE
Wie kann ich dies in ein SQl-Script packen ?
Moin!
Deine SQL-Shell kann also Eingaben entgegennehmen und diese abarbeiten.
Dann nimm das Standardrezept, welches für alle diese Formen geht:
entweder:
C:> echo "Befehlssequenz" | DeineAndereShell --optionen -o sonstwas
oder schreibe die Befehlssequenz in eine Datei (hier: "skript.txt"):
C:> DeineAndereShell --optionen --parameter sonstwas < skript.txt
Sollen die Ausgaben gespeichert werden:
C:> DeineAndereShell --optionen --parameter sonstwas < skript.txt > ausgaben_log.txt
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®