2017-07-26 49 views
0

我已經寫了我的代碼在批處理腳本中,但我沒有得到預期的結果。下面是我的代碼:連接到1個以上的oracle數據庫

echo updating database 

cd C:\Users\xxx\Desktop\myfolder\web 

sqlplus web/dbpassword @ web.sql > weblog.log 

cd C:\Users\xxx\Desktop\myfolder\archive 

sqlplus archive/dbpassword @ archive.sql > archive.log 

echo done 
cmd /k 

我試圖做的是連接到網絡執行web.sql,然後連接到存檔和執行archive.sql,但是當我執行我只看到網絡日誌中網絡文件夾,但不是在存檔文件夾,所以只有web.sql被執行,回聲完成從未達到

回答

2

的sqlplus繼續從標準輸入讀取命令,以防止這種情況的腳本標準輸入可以關閉

sqlplus web/dbpassword @ web.sql > weblog.log < NUL 

,否則可能會被稱爲

sqlplus web/dbpassword <web.sql> weblog.log 
+0

非常感謝,這是工作但還有一件事,當我添加set/p password =然後我使用%password%而不是dbpassword時,它被卡在 echo更新數據庫,它看起來好像沒有從輸入中獲取密碼。任何線索? – Kurama