oracle 虚拟表 多行,Oracle使用虚拟表dual一次插入多条记录【摘录】
从一个CSV文件中读取所有的数据,并且插入到一个Oracle数据库中,并且几分钟内完成,大约有60万条。
网上有人说了,你可以循环insert然后插入几千条以后Commit一次,我靠,你自己试试看!!如果没试过就不要误导别人好吧。
还有人说了,Oracle根本不支持一次多条插入,我靠,你咋不说自己学艺不精呢?
现在给大家介绍一个小技巧,话说在Oracle里有一个很奇特的“表”,名叫Dual。我们就要利用这个Dual来做文章,
首先,你知道 select '1' from dual 是啥结果吗? 对了,结果就是返回1。
其次,你知道
select '1' from dual
union all
select '2' from dual
是啥结果吗? 对鸟,结果是
1
2
那么,最关键的地方来了,
insert into 表名 (字段1)
select '1' from dual
union all
select '2' from dual
那么这一次就插入了两条数据。当然,如果全字段插入 那个(字段1)还可以省略掉。
下面一个具体例子:
insert into doc_data (code,id,value,state)
select '13','川A','成都市公安局交通警察支队车辆管理所',0 from dual
union all select '13','川B','绵阳市公安局交通警察支队车辆管理所',0 from dual
union all select '13','川C','自贡市公安局交通警察支队车辆管理所',0 from dual
union all select '13','川D','攀枝花市公安局交通警察支队车辆管理所',0 from dual
最后的实践证明,如果循环60万次Insert,一个小时也执行不完(当然有可能是机器太烂),而拼成1000条Select再插入一次,插入60万条的时间是20分钟,而拼成5000条Select再Insert一次,插入60万条数据的时间是12分钟。
祝你好运。
oracle 虚拟表 多行,Oracle使用虚拟表dual一次插入多条记录【摘录】相关推荐
- oracle表自动模拟多条数据,Oracle使用虚拟表dual一次插入多条记录
Oracle使用虚拟表dual一次插入多条记录 BEGIN generate_tmpsht; execute immediate 'insert into SHTSUPPLIERRATE (suppl ...
- oracle常用插入一条语句,Oracle:用一条 INSERT 语句批量插入多条记录
用一条 INSERT 语句批量插入多条记录,实例如下: 先建立这样一个表 T: SQL> DESC T Name Null? Type ---- ...
- mysql 插入多行_MySQL使用INSERT插入多条记录
MySQL使用INSERT插入多条记录,应该如何操作呢?下面就为您详细介绍MySQL使用INSERT插入多条记录的实现方法,供您参考. 看到这个标题也许大家会问,这有什么好说的,调用多次INSERT语 ...
- oracle最快访问行,Oracle技术网—在Oracle快速进行数据行存在性检查
在Oracle快速进行数据行存在性检查 当在应用程序的业务逻辑中需要检查一个外键是否有相关的主键时,往往使用Select Count(*)类型的SQL语句.这是一个很显而易的方法,但却不是最快的方法. ...
- oracle查出连续5行,Oracle期末考试复习题2
复习题 一.填空题: 1. Oracle EnterpriseManager是一个基于 B/S的框架系统. 2.Oracle数据库的存储结构分为物理结构和逻辑结构. 3.在游标或者游标变量打开后还没有 ...
- oracle导出表中某天数据命令,Oracle数据库使用命令行导入导出数据表及数据内容(本地、远程)...
一.本机导入导出 1.数据库导出命令,导出用户userA下的表结构和数据: exp 用户名/密码@服务名 owner=用户名 file=导出文件指定存储路径 full=y 2.数据库导入命令,将use ...
- java insert方法_【Oracle/Java】以Insert ALL方式向表中插入百万条记录,耗时9分17秒...
packagecom.hy;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;import ...
- oracle 一行转多行,oracle 一行变多行
1.正则表达式 SELECT distinct T.MY_ID, REGEXP_SUBSTR(T.MY_VALUE, '[^,]', 1, LEVEL) --返回第level次匹配的结果 FROM M ...
- php怎么创建表命令行,laravel创建数据表(使用命令行结合代码)
下面由Laravel框架教程栏目给大家介绍laravel 创建数据表,希望对需要的朋友有所帮助! 虽然可以直接在数据库中创建数据表,但是不便于以后项目的迁移.现使用命令行结合代码的方式来进行生成. 1 ...
最新文章
- Qt分析:Qt中的两种定时器
- wireshark相关协议详解和nc命令建立对话
- 计算机二级选择题复习整理(公共基础部分)
- Apollo进阶课程⑭ | Apollo自动定位技术——三维几何变换和坐标系介绍
- pppoe拨号的外网ip无法ping通_【思唯网络学院】 五大网络概念:IP地址、子网掩码、网关、DHCP服务和PPPoE拨号...
- autojs 如何获取控件的desc_owchart教程三:如何添加成交量?
- Windows系统利用5次shift维权漏洞复现
- 在CentOs 5.1中使用rpm安装NGINX+php+mysql(二)
- 51Nod-1062 序列中最大的数【序列计算+打表】
- IIS Web负载均衡的几种方式
- 最小圆覆盖(随机增量法模拟退火法)
- redis的key_value截图深入学习
- 原来做浏览器这么简单
- south plus soul /index.php 南+入口检测
- 1044 火星数字(C语言)
- Maya2022安装教程
- kafka reassign 限速_高速限速有了新规矩!公路限速标志设计规范即将施行
- 51单片机 AT24C02 PROTEUS 读写程序 源码
- uc显示无服务器连接,ucenter安装心得和通信失败,同步登陆失败采坑以及解决方法...
- java word 图片不显示_POI用addPicture插入图片到word里面无法显示
热门文章
- 给时光以生命,而不是给生命以时光--2018年终总结
- 获取汉字拼音首字母和五笔首字母
- 考察思维的灵活性,僵化
- qemu-system-x86_64: warning: host doesn‘t support requested feature: CPUID.80000001H:ECX.svm [bit 2]
- 安防系统的定义及相关组成部分详解
- 转载:解决采集UTF-8网页空格变成问号乱码
- 【CF 513F2】
- 爬虫(三):爬取西刺高匿代理
- TI官网注册账号一直卡人机识别问题
- Linux内核如何私闯进程地址空间并修改进程内存