如何使用Oracle Sql Loader使用当前时间戳填充时间戳字段

Sen*_*Sen 14 oracle sql-loader

我正在使用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
)
Run Code Online (Sandbox Code Playgroud)

对于LAST_UPDATED字段,我尝试过SYSTIMESTAMP和CURRENT_TIMESTAMP,但都不起作用.然而,SYSDATE工作正常,但不给我一天的时间.

我是SQL Loader的新手,所以我真的很清楚它是什么或不具备的.谢谢.

RC.*_*RC. 12

您是否尝试过以下方法:

CURRENT_TIMESTAMP [(精度)]

select current_timestamp(3) from dual;

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)"