我有一個bash腳本通過sqlplus中運行多個SQL文件:如何將參數傳遞給在sqlplus中使用START調用的sql文件中的PL/SQL塊?
sqlplus $connectioninfo << end
start file1.sql
start file2.sql
start file3.sql $variable
quit
end
文件3有一定的PL/SQL:
BEGIN
DBMS_OUTPUT.PUT_LINE(&1);
END;
/
,但它只是打印文字"&1"
代替的$variable
值。我也試圖在文件3如下:
DEFINE var_a = &1;
BEGIN
DBMS_OUTPUT.PUT_LINE(var_a);
END;
/
,並執行以下操作:
DECLARE
var_b VARCHAR2(64) := &1;
BEGIN
DBMS_OUTPUT.PUT_LINE(var_b);
END;
/
最後:
DEFINE var_a = &1;
DECLARE
var_b VARCHAR2(64) := var_a;
BEGIN
DBMS_OUTPUT.PUT_LINE(var_b);
END;
/
但是,我得到的各種錯誤或只是文本值'& 1'爲所有這些。
只是小幅盤整 ... >>結束 應該是相當 ...... <<結束 – igr 2013-03-21 22:17:37
感謝。只是修復它。 – xdhmoore 2013-03-21 22:19:53