1
我書面方式腳本(000-Install.sql)執行多個SQL腳本(001-sys.tab失敗,002-ENCA .tab等),在sqlplus控制檯中。腳本在sqlplus,在執行多個腳本
所以要開始,我添加了只有兩個腳本:
-- 000-Install.sql
spool upgradeSP1Ora.log
start 001-sys.tab;
start 002-enca.tab;
commit;
這裏所包含的腳本的內容:
-- 001-sys.tab
select * from empr;
/
-- start 002-enca.tab
select * from dte_enca_docu;
/
但由於某些原因,執行提示是這樣的:
CODI_EMPR NOMB_EMPR GIR
---------- ---------------------------------------- ---
DIRE_EMPR CODI_COM CODI_CIU RUTT_EMPR
-------------------------------------------------- -------- -------- -------
D CODI_RAMO NFAN_EMPR CODI_PERS
- ------------ ---------------------------------------- ----------------
EMPR_CODG EMPR_NOMB FONO_EMPR
---------- ---------------------------------------- --------------------
RUTT_REPL D NOMB_REPL CAC MUT POMU_EMPR POCA_EMPR
---------- - ----------------------------------- --- --- ---------- -------
FECA_EMP FEMU_EMP CIN CUEN_EMPR CAJ COLOR_EMPR LOGO_EMPR
-------- -------- --- ------------ --- --------------- ---------------
CODI_EMEX CLAV_ENCR
------------------------------ ------------------------------
ASUN_FACT_EMPR
---------------------------------------------------------------------------
TEXT_FACT_EMPR
----------------------------------------------------------------------------
385
而第二個腳本(開始002-en ca.tab)永遠不會執行。
問題是我的腳本文件的執行沒有正確完成(至少看起來是這樣),並且阻止我的第二個腳本運行。
注:如果我按進入 加一的數量,如果我打CTRL +ç的執行將被取消。腳本的
謝謝@位於0xDB,你的回答讓我在正確的軌道,但實際溶液中加入'/ '在一些腳本之後(不是每個腳本都需要一個腳本)。這是幫助我理解'/'需求的解決方案:https://stackoverflow.com/a/10207695/6780663。 –
@AlejandroMontilla歡迎您。只有帶嵌入塊的語句需要斜槓,因爲分號結束塊而不是完整的語句。 select不需要,因爲分號結束並執行帶下劃線的語句。因此我刪除了斜槓。 – 0xdb
我明白了,謝謝你的澄清,你是對'select's不需要'/',在我的情況下只有具有'CREATE PROCEDURE'的腳本才需要它。 –