如何在Oracle SQL Developer中执行超过100万个插入查询?

phe*_*eww 3 sql oracle sql-scripts oracle-sqldeveloper

我有超过100万个插入查询要在Oracle SQL Developer中执行,这需要花费很多时间.有没有办法优化这个.

tha*_*ith 9

SQL Developer是运行1,000,000行逐行插入的错误工具.

那就是SQL*Plus.

如果你不能编写程序来使用循环或游标或某些pl/sql批量收集进行插入,那么执行@ marmite-bomber建议的内容 - 将数据写入平面分隔的文本文件,并设置SQL*装载机场景.

现在,您可以使用SQL Developer来执行此操作.

在此输入图像描述

指向分隔的文本文件.

映射所有内容,然后使用此IMPORT方法. 在此输入图像描述

完成后,您将拥有一组bash或cmd脚本,您需要执行这些脚本.但首先,您需要在您的计算机上安装Oracle客户端 - 这就是sqlldr程序所在的位置.

它比运行1,000,000个单独插件快几个数量级.你的DBA不会恨你.

使用SQLDev向导,您可以在几分钟内完成它.

证明:我测试了一个简单的场景 - 我的发现是(详情在这里):每秒插入10,753条记录SQL*Loader 342每秒插入的记录为SQL Developer

SQL*Loader的速度提高了3,144%.