Ich versuche, einen osql-Befehl aus dem Java-Programm zum Wiederherstellen der Datenbank wie folgt auszuführen.Runtime.getRuntime(). Exec - Osql-Abfrage ausführen
public void restore(){
Runtime.getRuntime().exec("cmd /c start osql -S PC-NAME -U username -P password -i createdb.sql
}
Wenn ich Methodenwiederherstellung aufrufen, wird die Eingabeaufforderung geöffnet, osql wird ausgeführt und dann wird die Eingabeaufforderung unsichtbar.
Könnten Sie bitte lassen Sie mich wissen, wenn es eine Möglichkeit gibt, die Eingabeaufforderung zu beenden geschlossen zu stoppen?
Danke für Ihre Hilfe
Vielen Dank für die schnelle Antwort. Es funktioniert mit der Batch-Datei. Ist es nicht möglich, die Eingabeaufforderung beizubehalten, wenn wir direkt aus Java-Code ausführen? – NewBie
@NewBie 'cmd' wird beendet, wenn der Befehl als'/c' übergeben wurde. Sie können zwei Befehle in einer Zeile mit '&' kombinieren und den kombinierten Befehl als Argument an '/ c' übergeben. Aber ich bin mir nicht sicher über die Syntax. Versuchen Sie 'cmd/c start osql -S PC-NAME -U Benutzername -P Passwort -i createdb.sql & pause" (nicht sicher). – khachik