问题
接口文件与数据库表比较,少了一个按行自增的eventId,打算在使用sqlldr时直接加上这个自增字段
解决
1、 使用sqlldr中序列函数:
options(skip = 0)
load data
infile 'insertFileName'
append into table insertTableName
fields terminated by ','
TRAILING NULLCOLS
(
prov_id ,
city_id ,
start_time ,
end_time ,
rate_time "to_date(\''''+fileDate+'''040000', 'yyyymmddhh24miss')" ,
file_name constant "'''+insertFileName+'''" ,
event_id sequence(max,1)
)
其中:
- skip表示开头要跳过几条记录(默认值为0,即从第一条记录开始);
- constant表示使用常量值填充file_name
- sequence(max, 1)表示使用序列号从1开始逐条递增
2、使用oracle中的sequence,待验证