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

标签 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
)

对于 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/

相关文章:

甲骨文更新问题

sql - sqlplus 中的 Oracle 输出

mysql - 选择特定 ID 的行,其中对应的列仅包含提到的一组值

sql - Oracle 加入时查询速度慢,拆分成两个查询时速度快

database - 在 Oracle 数据库之间复制包含 BLOB 列的表

sql - ORA删除/截断

oracle - SQL加载程序错误: "Variable length field exceeds maximum length."

sql - 如何将十六进制数据插入到oracle表中?

java - 如何使用 wamp 服务器发送 Spinner 在数据库中选择的值

python - 将大型 CSV 文件加载到 Oracle 表的技术选择