我正在使用 SQL Loader 读取管道分隔文件,并希望在我正在填充的表中填充 LAST_UPDATED 字段。我的控制文件如下所示:
LOAD DATA
INFILE SampleFile.dat
REPLACE
INTO TABLE contact
FIELDS TERMINATED BY '|'
OPTIONALLY ENCLOSED BY '"'
(
ID,
FIRST_NAME,
LAST_NAME,
EMAIL,
DEPARTMENT_ID,
LAST_UPDATED SYSTIMESTAMP
)
对于 LAST_UPDATED 字段,我尝试了 SYSTIMESTAMP 和 CURRENT_TIMESTAMP ,但都不起作用。然而,SYSDATE 工作正常,但没有给我一天中的时间。
我是 SQL Loader 的新手,所以我对它的功能知之甚少。谢谢。
最佳答案
您是否尝试过以下操作:
CURRENT_TIMESTAMP [(精度)]
从双中选择 current_timestamp(3);
CURRENT_TIMESTAMP(3)
-----------------------------
10-JUL-04 19.11.12.686 +01:00
要在 SQLLDR 中执行此操作,您需要在 CTL 文件中使用 EXPRESSION,以便 SQLLDR 知道将调用视为 SQL。
代替:
LAST_UPDATED SYSTIMESTAMP
和:
LAST_UPDATED EXPRESSION "current_timestamp(3)"
关于oracle - 如何使用 Oracle Sql Loader 使用当前时间戳填充时间戳字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1233254/