Java執行SQL腳本導入

    今天做了一個用java導入sql腳本的功能,前臺上傳一個sql文件,後臺先保存本地,然後進行導入。主要代碼如下:

String cmd = "cmd /c sqlplus usr/pwd@{//服務器IP:1521/}sid @d:\\1.sql>d:\\t.log";
Process p = null;
try {
    p = Runtime.getRuntime().exec(cmd);
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if (p != null) {
    try {
        p.waitFor();
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
    p.destroy();
    }
}

注:1.sql文件中必須要有/

    2.如果沒有在sql最後一行加入exit則,執行完後,process實例仍然出於等待中,具體可以自行嘗試cmd中執行。如需sql執行完程序關閉則最後一行加入exit。

    3.上面的服務器IP和端口號是可選的,如果你已經配置了Net manager,則直接引用配置的sid就行了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章