bulk forall 的測試(轉)
SQL> select count(*) from limit_tmp;
COUNT(*)
----------
700750
create table limit_bak as select CUST_CODE,PROD_CODE,DAY_LIMIT from limit_tmp where 1=2;
create table limit_bak1 as select CUST_CODE,PROD_CODE,DAY_LIMIT from limit_tmp where 1=2;
create table limit_bak2 as select CUST_CODE,PROD_CODE,DAY_LIMIT from limit_tmp where 1=2;
用一般的方式插入
begin
for c1 in (select cust_code,prod_code,day_limit from limit_tmp) loop
insert into limit_bak2 values (c1.cust_code,c1.prod_code,c1.day_limit);
end loop;
commit;
end;
PL/SQL procedure successfully completed
Executed in 42.515 seconds
用 bulk collect + forall 的方式插入資料
declare
TYPE custtab IS TABLE OF varchar2(12)
INDEX BY BINARY_INTEGER;
TYPE prodtab IS TABLE OF VARCHAR2(8)
INDEX BY BINARY_INTEGER;
TYPE limittab IS TABLE OF NUMBER(12,2)
INDEX BY BINARY_INTEGER;
custarr custtab;
prodarr prodtab;
limitarr limittab;
begin
select cust_code,prod_code,day_limit bulk collect into custarr,prodarr,limitarr
from limit_tmp;
forall i in 1 .. custarr.count
insert into limit_bak1 values (custarr(i),prodarr(i),limitarr(i));
commit;
end;
PL/SQL procedure successfully completed
Executed in 6.515 seconds
直接語句插入
insert into limit_bak select cust_code,prod_code,day_limit from limit_tmp;
700750 rows inserted
Executed in 3.125 seconds
可見還是通過語句直接插入的最快,但是在需要在程式中批量插入的時候,bulk 和forall的確是可以提高速度的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/756652/viewspace-242162/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- BULK In-BIND與RECORD(轉)
- forall在10g新功能
- 轉:測試工程師的面試總結工程師面試
- 從傳統測試轉向敏捷測試敏捷測試
- 單元測試-【轉】論單元測試的重要性
- 從功能測試轉成自動化測試,軟體測試工程師該如何成功轉型?工程師
- 角色的轉變-測試工程師職責轉變工程師
- Web測試轉App測試不看不知道WebAPP
- Web 測試轉 App 測試不看不知道WebAPP
- 功能測試如何快速轉向自動化測試?
- 敏捷測試VS傳統測試對比,6招玩轉敏捷測試!敏捷測試
- Elasticsearch——mget及bulkElasticsearch
- sqlserver bulk insert報錯Cannot bulk load because the file could not be opened.SQLServer
- [轉帖]sysbench基準測試
- 【elasticsearch】bulk api奇特的json格式的原因ElasticsearchAPIJSON
- 我是如何從測試轉為產品的
- 測試要點總結(轉帖)
- 成功的9大步驟:從手動測試轉為自動化測試
- 測試測試測試測試測試測試
- 軟體測試工程師如何從功能測試轉成自動化測試?經驗分享篇工程師
- 如何讓軟體開發從功能測試轉入應用測試?
- 109.全文檢索-ElasticSearch-入門-刪除資料&bulk批量操作匯入樣本測試資料Elasticsearch
- 最新kali之bulk_extractor
- mongodb批量操作, bulk_write,MongoDB
- 我真的從測試轉成了開發......
- 玩轉 Github Profile Readme:單元測試Github
- run_stats---sql效率測試工具(轉)SQL
- 功能測試轉向自動化測試 / 開發。10年 心路歷程——願測試人不再迷茫
- 基於LangChain手工測試用例轉App自動化測試生成工具LangChainAPP
- 基於LangChain手工測試用例轉Web自動化測試生成工具LangChainWeb
- 基於LangChain手工測試用例轉介面自動化測試生成工具LangChain
- 我為何從測試轉測試開發,並堅持了10年?
- 敏捷專案下的傳統測試轉型之旅 | IDCF敏捷
- 【轉】Webpack 中配置的 alias 在 Mocha 測試用例中Web
- 測試——水杯的測試用例
- 滲透測試基礎--內網轉發內網
- 使用測試客戶端「玩轉」MQTT 5.0客戶端MQQT
- MTSC 深圳測試大會門票轉讓