2014-12-02 128 views
2

使用Oracle数据库XE 11g进行操作。我具有基于亚历山大公用事业例行 - https://code.google.com/p/plsql-utils/Oracle SQL从CLOB中提取CSV文件并加载到表中

它从的Clob(首先使用Blob_to_clob)提取CSV文件,并允许它与列被读取作为一个表,以提取数据,并将其加载到表。

问题是,它很慢,而且似乎是相当CPU密集型。 20,000条记录需要8分钟以上..我在论坛上问过,一般来说,但似乎无法找到另一种更快的方式从CLOB中提取CSV文件并加载到表中。

CSV文件标准逗号分隔,新行格式...

任何人任何想法? 谢谢

+0

看起来'clob_to_csv'例程有很多dbms_lob.instr和dbms_lob.substr。如果以大块读取数据并将其解析为varchar2,将会快得多。尽管我现在没有时间去处理它,但这将是一个好主意。 – 2014-12-02 12:10:31

回答

1

让数据库读取作为外部表寻址的csv,或使用sqlldr将csv加载到表中。

相关问题