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

相关推荐
我是zxb13 分钟前
EasyExcel:快速读写Excel的工具类
数据库·oracle·excel
_苏沐7 小时前
cte功能oracle与pg执行模式对比
数据库·oracle
Blossom.11815 小时前
从“能写”到“能干活”:大模型工具调用(Function-Calling)的工程化落地指南
数据库·人工智能·python·深度学习·机器学习·计算机视觉·oracle
不秃的开发媛16 小时前
Java连接池详解:从Oracle到TiDB的随缘之旅
java·oracle·tidb
嘻嘻哈哈曹先生16 小时前
Oracle数据库
数据库·oracle
0_0梅伊阁诗人18 小时前
Django ORM 模型
开发语言·数据库·笔记·python·oracle·django
数巨小码人20 小时前
Oracle SQL调优技巧实战指南
数据库·sql·oracle
noravinsc20 小时前
在银河麒麟v10上安装达梦8数据库
服务器·数据库·oracle
lu9up2 天前
因表并行引发的血案【故障处理案例】
数据库·oracle·dba
代码的余温2 天前
Oracle RAC共享存储核心技术
数据库·oracle