使用SQL * LDR直接路径加载TimeStamp数据
-
01-07-2019 - |
题
SQL-LDR文档声明您需要进行对流路径加载:
当您想要应用SQL函数时 到数据字段。 SQL函数不是 在直接路径加载期间可用
我将TimeStamp数据存储在CSV文件中,我通过描述字段来加载SQL-LDR:
STARTTIME "To_TimeStamp(:STARTTIME,'YYYY-MM-DD HH24:MI:SS.FF6')",
COMPLETIONTIME "To_TimeStamp(:COMPLETIONTIME,'YYYY-MM-DD HH24:MI:SS.FF6')"
所以我的问题是:您是否可以在没有函数的情况下加载时间戳数据,或者在加载TimeStamp数据时是否无法执行直接路径加载?
解决方案
以下是有人成功直接加载时间戳数据的示例:
加载数据(第4部分) ):sqlldr(direct,skip_index_maintainance)
其他提示
来自此 OTN论坛主题:
你只需要设置环境 变量NLS_TIMESTAMP_FORMAT告诉 SQL * Loader期望的格式是什么 时间戳在:
设置NLS_TIMESTAMP_FORMAT = YYYY-MM-DD HH24:MI:SS.FF
..并删除对该引用的引用 to_timestamp函数完全来自 控制文件。
作为旁注,我们大多数人已经停止使用“ sql loader”更高级的版本“外部表格”假设您使用的是较新版本的Oracle。
不隶属于 StackOverflow