当试图使用SQLLoader将大型文本文件加载到oracle时,我们会得到以下错误:
SQL*Loader-926: OCI-Error; uldlfca:OCIDirPathColArrayLoadStream for table <myTabele>
SQL*Loader-2026: the load was aborted because SQL Loader cannot continue.
SQL*Loader-925: Error in uldlgs: OCIStmtExecute (ptc_hp)这只发生在直接模式下,当我们使用传统的路径方法时,一切都很好(但速度要慢得多)。因此,我假设这不可能是数据或控制文件的一般部分的问题。
虽然错误信息非常有趣,但我能做些什么才能让一切正常工作呢?
版本: SQLLoader 9.2.0.1,数据库是10.2.0.3.0 (64位)
编辑后再尝试一下,似乎问题是由使用函数转换部分输入引起的。当我移除这些函数(以及表定义中产生的更改)时,一切看起来都很好。在执行直接负载时,是否可能不能使用函数?文档上说从9.x版本开始它应该能工作..。
发布于 2009-01-12 17:04:40
首先,如果人们能够开始指定他们有问题的产品的版本信息,这将是一个很大的帮助。
尽管如此,我在metalink中发现了一个问题:
Bug 3073503 -如果第一次加载行获得ORA错误,直接路径加载会话将在OER:klapse_30中失败
描述
Direct load via sqlldr may report errors and the server may
fail with ORA-600 [klaprs_30] if the first loaded row fails
with oracle error.
eg: After an ORA-1722 loader fails with:
ORA-26095: unprocessed stream data exists
ORA-03113: end-of-file on communication channel
SQL*Loader-926: OCI error while uldlfca:OCIDirPathColArrayLoadStream for..
SQL*Loader-2026: the load was aborted because SQL Loader cannot continue.
SQL*Loader-925: Error while uldlgs: OCIStmtExecute (ptc_hp)
and the user session fails with ORA-600 [klaprs_30].
Workaround:
Use conventional load据推测影响版本>= 9.2但< 10.1.0.2
您可能需要在错误发生时检查警报日志中的ORA-00600错误。
发布于 2009-01-12 21:59:15
检查数据库警报日志。“直接路径插入”写入当前表的高水标记之上,因此,当它为表分配更多的范围时,可能会出现问题。
https://stackoverflow.com/questions/435114
复制相似问题