插入表<oracle 10g =“”> </oracle>的有效方法

时间:2012-08-16 00:06:26

标签: oracle insert oracle10g

美好的一天。

我们要求在自定义表中插入大约800000条记录,现在使用简单的插入语句大约需要30多分钟。我们将从文件中读取记录并使用简单的insert语句创建.sql文件。我相信除了正常的方式之外,还有一种有效的方式来插入记录。

我试过以下。

  1. / 追加 / ....由于每次插入语句后的提交,它花费的时间比以前多了。所以这被排除了
  2. 插入所有 进入c_table(X,X,X)值('','','',)
    进入c_table(X,X,X)值('','','',) 进入c_table(X,X,X)值('','','',) 从双重选择1;
  3. 对于1000的计数,选项2是好的但是对于批量插入它再次花费超过30分钟。 如果有其他选择请分享。

    注意:我不能使用sqloader或datapump,因为我们没有数据库密码。

    此致 普拉香特

1 个答案:

答案 0 :(得分:2)

不要从输入数据创建sql文件。相反,根据源文件创建External table并查询它 - 您应该能够使用append选项运行整个插入,并且它应该比所有单个插入语句花费更少的时间。