如何将包含clob字段的文件中的数据插入到oracle数据库。
从文件中读取。 插入oracle数据库
当clob数据存在时,可能会出现一些并发症。
谢谢,Naveen
答案 0 :(得分:3)
我通常建议使用SQL * Loader或外部表,具体取决于文件是(或可以)放在数据库服务器上,还是打算从客户端计算机加载文件。
SQL * Loader控件文件的细节取决于文件的格式,但文档中有loading CLOB data stored in a data file的示例,可以帮助您入门。
答案 1 :(得分:1)
当我为我的上一家公司做这件事时,我们使用存储过程和多个线程编写了一个C#程序。上下限制线程有助于加载数据库。由于某些配置设置,我们无法使用Loader。关联数组也有帮助。
在我们的例子中,我们无法进行一些优化,因为这些表是实时的,但在加载后可以关闭索引并重建它们可以提高性能。我们在RAC环境中看到了一些问题,每个rac服务器都在争夺索引文件,分区和调整索引提高了性能,但我不是一个真正的Oracle大师,所以你可能想问一个更聪明的人。
我知道我们看到CLOB数据的性能非常差,因此我们将其中一个字段更改为跨越多个varchar(4000)的压缩字符串,然后让程序在使用时将它们拼接在一起。 / p>
答案 2 :(得分:1)
尽量减少瓶颈。
一旦你的硬件适应了大量的写入负载,那就使用SQL * Loader / external tables。
我怀疑多线程/进程是否有用,因为我希望速度受到写入磁盘而不是CPU的能力的限制。如果您可以将LOB传播到包含多个轴上的文件的表空间,这可能会有所帮助。