使用SQL * Loader控制文件将日期从一种格式转换为另一种格式
答
当您指定的INFILE列申报只是识别数据被保持的格式。像这样
load data
infile 'whatever.csv'
into table t23
fields terminated by ','
trailing nullcols
(
col_1 integer
, col_2 char
, col_3 date "MM/DD/YYYY"
, col_4 date "MM/DD/YYYY"
, col_5 char
)
不要担心“到”日期格式。这仅用于显示目的。 Oracle将日期存储在自己的内部表示中。
答
您是否试图将MM/DD/YYYY数据加载到char/varchar2字段或日期字段中?
如果您尝试将其加载到日期字段中并且想要保留当月的某一天,那么APC的答案是正确的。如果这是你想要做的,你总是可以呈现YYYYMM。
如果你试图将其加载到一个日期字段,并希望将其截断到一个月的第一天,我觉得像这样的工作:
date_column date "MM/DD/YYYY" "trunc(:date_column, 'mm')"
如果插入一个CHAR/VARCHAR2列,你可以稍微改变它:
vc2_column char "substr(:vc2_column, 7, 4) || substr(:vc2_column, 1, 2)"