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版本及以上版本支持此语法

相关推荐
TH_18 小时前
20、误删oracle数据
数据库·oracle
l1t10 小时前
利用docker在windows 11 wsl中安装oracle 12cR2
运维·windows·docker·oracle·容器
GanGuaGua12 小时前
MySQL:复合查询
数据库·mysql·oracle
gugugu.12 小时前
MySQL事务深度解析:从ACID到MVCC的实现原理
数据库·mysql·oracle
狮子也疯狂12 小时前
【天翼AI-星辰智能体平台】| 基于Excel表实现智能问数助手智能体开发实战
人工智能·oracle·excel
川贝枇杷膏cbppg1 天前
asmcmd
数据库·oracle
MAHATMA玛哈特科技1 天前
液压校平机:金属的“液态风筝收线器”
oracle·自动化·矫平机·液压矫平机
vortex51 天前
ORM是什么?如何理解ORM?ORM的优缺点?
java·数据库·sql·mysql·oracle·orm
·云扬·1 天前
InnoDB锁监控与排查:从基础到实战
数据库·oracle
悦悦子a啊1 天前
Maven 项目实战入门之--学生管理系统
java·数据库·oracle