我試圖運行下面的SQLPlus *命令集:SQL加 - SET命令不影響腳本正在運行
/usr/tmp/> sqlplus -s/@my_test_script param1 param2 <<-EOF
SET ECHO OFF
SET HEADING OFF
SET VERIFY OFF
SET TERMOUT OFF
SET FEEDBACK OFF
SET PAGES 0
SET LINESIZE 400
EXIT
EOF
命令集都應該抑制從劇本我是輸出運行 - 但它們沒有效果,因爲腳本本身可能對ECHO,HEADING等具有不同的「範圍」。 只有將所有SET命令移動到腳本文件本身後,輸出纔會被抑制。
由於這段代碼最終應該變成用於運行其他SQL腳本的通用腳本,因此將這些SET命令放在每個腳本中並不是一個好的解決方案。
有誰知道強制SET命令值超過在同一個SQLPlus *「會話」中運行的腳本的方法嗎?
我認爲你正在重定向到sqlplus的'set'命令正在運行_after_腳本。 –
您在這裏 - 第一行定義的文檔字符串是「-EOF」,但只用「EOF」關閉它(前面沒有短劃線)。在第一行的'E'之前刪除短劃線。永遠不要思索我剛纔讀到,短劃線忽略了here-doc行中的主要TAB。感謝您讓我今天學習一些東西!大聲笑 –