1. 程式人生 > >oracle批量執行檔案指令碼sql

oracle批量執行檔案指令碼sql

專案上線的時候往往會有很多指令碼,這些指令碼分開放在不同的檔案裡面,要是一個一個的執行的話,那得等到猴年馬月啊,

而且還很容易手抖,往往一個檔案沒有執行,後果不堪設想。

這裡記錄了我所使用到的批量之星sql的語句:

1.將指令碼放到同一個目錄,如:d:\sqls
2.在d:\sqls目錄下編寫pdc檔案,如batch.pdc
3.使用pl sql developer開啟 batch.pdc
編寫如下指令碼:
conn user_name1/password@database1;
@@ 1.sql;
@@2.sql;
@@3.sql;
exec p_test1; --  執行自己定義的儲存過程
 
Conn user_name2/password@database2;
@@ 4.sql;
@@ 5.sql;
 
4注意:
如果有字串中出現&,則可以這樣寫
set set define off;  -- 禁用轉義字元
 
conn user_name1/password@database
@@ 1.sql;
/ -- 高過中間的引數
@@2.sql;
/
@@3.sql;
/




conn EXP_USER/exp_user@CC_192.168.67.117;
@@ 01qrtz_job_schedules.sql;
@@ 02qrtz_job_plannings.sql;
@@ 03qrtz_job_loggings.sql;
@@ 04qrtz_job_details.sql;
@@ 05qrtz_job_listeners.sql;
@@ 06qrtz_triggers.sql;
@@ 07qrtz_simple_triggers.sql;
@@ 08qrtz_cron_triggers.sql;
@@ 09qrtz_blob_triggers.sql;
@@ 10qrtz_trigger_listeners.sql;
@@ 11qrtz_calendars.sql;
@@ 12qrtz_paused_trigger_grps.sql;
@@ 13qrtz_fired_triggers.sql;
@@ 14qrtz_scheduler_state.sql;
@@ 15qrtz_locks.sql;




database1 為監聽別名