2014-10-29 21 views
0

我需要創建一個批處理文件,它將在程序中執行一系列命令。我需要它連接到一個oracle數據庫,然後啓動一個拉。在批處理文件中運行程序

下面是當前文件:

sqlplus [username]/[pass]@[host]:[port]/[service] 
set feedback off 
set term off 
set linesize 32000 
set pagesize 0 
set trimspool on 
set underline off 
set heading on 
set newpage none 
spool C:\1.csv CREATE 
[Query Goes here] 

我運行該腳本,但它不只是第一行執行任何東西。它連接好,但等待我退出sqlplus執行腳本的其餘部分。有沒有辦法來解決這個問題?如果可能,我想避免使用多個文件。

+0

把你的命令在一個文本文件,並調用它像'的sqlplus [用戶名]/[通] @ [主持人]:[端口]/[服務] @ /路徑/到/ sqlplus_command_file.txt'。 (我認爲!)。祝你好運。 – shellter 2014-10-29 20:37:23

回答

0

如果有人遇到這個問題,尋找一個* nix中基礎的解決方案,它會是這樣的:

sqlplus -s <username>/password <<EOF 
set feedback off 
set term off 
set linesize 32000 
set pagesize 0 
set trimspool on 
set underline off 
set heading on 
set newpage none 
spool C:\1.csv CREATE 
EOF 

,直到遇到EOF的後續命令發送到SQLPLUS,然後SQLPLUS將關閉。

但我不知道怎麼做Windows上的等價物。

+0

@BrianFurtado在Windows上完成了這項工作?還是你需要修改任何東西? – mason 2014-11-03 15:57:41