2

我正在尝试从 Java 程序执行 osql 命令来恢复数据库,如下所示。

public void restore(){

Runtime.getRuntime().exec("cmd /c start osql -S PC-NAME -U username -P password -i createdb.sql
}

当我调用方法 restore 时,命令提示符被打开,osql 被执行,然后命令提示符变得不可见。

您能否告诉我是否有办法阻止命令提示符关闭?

谢谢你的帮助

4

2 回答 2

1

将您的命令osql ...写入一个 bat 文件,pause作为该 bat 文件的最后一行,然后从您的代码中运行该 bat。

于 2010-11-22T14:39:48.737 回答
0
public static void main(String[] args) throws Exception {
    Runtime.getRuntime().exec("cmd /c start dir");
}

这不会关闭生成的命令行。

从这个链接http://ss64.com/nt/cmd.html

Options   
   /C     Carries out My_Command and then terminates 
   /K     Carries out My_Command but remains

您可以尝试 /K 而不是 /C 并告诉结果是什么吗?

此外,您应该先从批处理文件中尝试,然后再从 Java 中尝试。

于 2010-11-22T15:09:24.643 回答