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

相关推荐
东风破13710 小时前
达梦DMDRS搭建、以及DMDRS双向同步
数据库·oracle·dm达梦数据库
六月雨滴14 小时前
RMAN 增量备份(Incremental Backup)
数据库·oracle
ccice0117 小时前
硬核数据技术:驱动Gemini境像站完成从自然语言到SQL查询、数据可视化与洞察报告的全链路自动化(国内镜像免费实测
数据库·oracle
尚雷558021 小时前
Oracle ASM 存储更换与整体迁移实战整理
数据库·oracle·ocr·asm
DarkAthena1 天前
【DuckDB】一条 SQL 同时连接 Oracle 和 GaussDB
oracle·gaussdb·duckdb
尚雷55801 天前
Oracle 18C 物理 DataGuard 搭建部署完整文档(适合开发测试)
数据库·oracle·dataguard
倔强的石头1061 天前
深度解析:数据库内核如何通过逻辑推理与常值推导突破去重性能瓶颈
数据库·oracle
为什么不问问神奇的海螺呢丶1 天前
Oracle database SYSAUX 表空间占用率过高处理方案
数据库·oracle
在繁华处1 天前
从零搭建轻灵(五):记忆系统与生产化特性
java·jvm·oracle
betazhou1 天前
LOG_ARCHIVE_DEST_2 ORA-01033: ORACLE initialization or shut
数据库·oracle·oracle19c adg