Oracle高速批量速插入数据解决方案

最近做短信群发项目有一个需求,需要客户大批量(十万级)导入数据.

开始是用insert单条数据,10万条数据要20分钟

后来发现可以用insert all 一条sql一次导入500条记录,这样10万条数据只用了1.5分钟,导入速度提高了近来20倍

下面就使用insert all的心得体会记录如下.

使用方法:

sql 复制代码
insert all into table_name(col_1,col_2) values (value_1,value_2)
           into table_name(col_1,col_2) values (value_1,value_2)
           into table_name(col_1,col_2) values (value_1,value_2)
           .........................................................................
           into table_name(col_1,col_2) values (value_1,value_2)
select 1 from dual

需要注意几点:

1.此sql语法上要求后面有select,在本例中,select 1 from dual其实是没有意义的,但必须加上,维护语法上的完整性.

2.所有列数不能超过1000,超过抛出异常

3.oracle 9i版本及以上版本支持此语法

相关推荐
betazhou16 小时前
Apache Seatunnel 抽取Oracle数据库测试
数据库·oracle·apache·seatunnel
devilnumber18 小时前
Oracle 与 MySQL substr 函数差异总结
java·数据库·mysql·oracle
疯狂打码的少年21 小时前
【数据库技术】SQL数据查询(SELECT基本语法)
数据库·笔记·sql·oracle
Broccoli523026651 天前
FastAPI + SQLAlchemy 异步会话(AsyncSession)核心方法
数据库·oracle·fastapi
oradh1 天前
Oracle TM 锁 Mode 4(Share)问题排查总结
数据库·oracle·oracle tm 锁·tm 锁 mode 4
CodeStats1 天前
MySQL与Oracle数据类型底层设计原理对比(下)
数据库·mysql·oracle
oradh2 天前
Oracle TX 锁 Mode 4(Share)问题排查总结
数据库·oracle·tx 锁 mode 4·oracle tx 锁
yi.Ist2 天前
数据定义语言-DDL操作
数据库·学习·mysql·oracle·大海豚
Irene19912 天前
格式化掩码 FM999999999999999999999.00 是 Oracle 数据库中 TO_CHAR 函数的数字格式模型
oracle·数字格式
蓝鸟19742 天前
Oracle HIS业务视图优化实战|VI_BQ_YWTX11从高耗费到秒级响应
数据库·oracle·his数据库调优·复合索引踩坑·is null索引问题·ql视图优化