1樓:千鋒教育
方法如下:
1:執行cmd進入命令列介面。
2:進入到存放批量sql的資料夾下面。
3:輸入命令 sqlplus 資料庫名/密碼@資料庫 按回車鍵。
4:輸入spool 指定路徑:\a.
log 按回車鍵 (此步驟的主要作用就是追蹤批量執行sql的日誌,路徑隨便寫,只要能找到就行,可以隨便起名,但是必須要。log字尾)
5: 按回車鍵(在批量sql資料夾下寫一個檔案,名字叫,其中在這個檔案裡面寫批量sql的檔名)
具體格式如下:@@sql的檔名。sql;
sql的檔名;
6:spool off (此時中所有日誌已經寫入完畢)7:exit 退出sqlplus
當然只有一個sql檔案,但是裡面有多個insert語句,資料量非常大,此時也可以在命令狀態下執行,前4步是一樣的,第五步就是@檔名。sql;
2樓:匿名使用者
你可以再寫一個回滾11_ocoreamsd、12_ocoreamsd、13_ocoreamsd的指令碼,例如rollback_;
然後,建立一個狀態table,例如:
create table t_script_status(script_id number(10), script_status varchar2(20));
insert into t_script_status (script_id, script_status) values(11, 'not run');
insert into t_script_status (script_id, script_status) values(12, 'not run');
insert into t_script_status (script_id, script_status) values(13, 'not run');
commit;
然後,分別在11_ocoreamsd、12_ocoreamsd、13_ocoreamsd中新增**,如果沒有錯誤或異常,則更新t_script_status,把指令碼自己對應的那一行的狀態,由'not run'改為'successful';
然後,建立一個儲存過程,裡面首先執行11_ocoreamsd,檢查t_script_status,如果對應的狀態仍為'not run',則表明11_ocoreamsd有錯誤或異常,則執行rollback_;如果是'successful',則繼續執行12_ocoreamsd;如此類推。
可能有點繁瑣,希望對您有用阿。
oracle中怎樣一次執行多條sql語句
oracle中怎樣一次執行多條sql語句
如何在oracle中一次執行多條sql語句
Oracle如何檢視sql的真實執行計劃
查詢v sql plan檢視中的實際執行計劃 1 在視窗執行下面sql語句 select ename,sal from scott.emp,scott.dept where emp.deptno dept.deptno and dept.loc chicago 2 檢視執行sql的sql id se...
oracle如何得到sql語句執行時間
通過oracle執行計劃可以看到sql的執行時間。explain plan for select from table select from table dbms xplan.display sql set timing on 顯示執行時間sql set autorace on c顯示執行計劃sq...
oracle中怎樣一次執行多條sql語句
需要一次性執行多條sql語句,而用來更新的sql是根據實際情況用 拼出來的 解決方案是把sql拼成下面這種形式 begin update tb vg set seq 1,vessel id jin14 vessel type track where batch number 20837 and tr...