我需要使用bash循環一個oracle sqlplus查詢。在bash腳本中循環sql查詢
我的情況是這樣的。我在文本文件中有一組名稱,我需要使用sqlplus查詢來查找這些名稱的詳細信息。
TextFile.txt的內容:
john
robert
samuel
chris
bash腳本
#!/bin/bash
while read line
do
/opt/oracle/bin/sqlplus -s [email protected]/password @query.sql $line
done < /tmp/textfile.txt
SQL查詢:query.sql的
set verify off
set heading off
select customerid from customers where customername like '%&1%';
exit
問題是,當我運行該腳本,我得到這樣的錯誤
SP2-0734:未知命令開始 「robert ...」 - 忽略行的其餘部分。
有人能告訴我如何解決這個問題嗎?
通常最好是執行一個大的查詢並避免循環執行sql – 2011-02-01 06:17:53
的確如此。它看起來像OP正試圖重新創建一個保存在文本文件中的存儲過程。 – lll 2011-02-01 06:22:32