So you want to supply a default value for columns missing at the end of records in your source file?
If so, using the "trailing nullcols" option and provide a default in the column spec.
For example, if your table is:
create table t (
x int, y int, z int
);
The following control file only has values for the first two columns. But it gives the default of 0 for the final column:
load data
infile *
into table t
fields terminated by "\t" optionally enclosed by '"'
TRAILING NULLCOLS
( X, Y, Z "0"
)
begindata
1 1
2 2
So when you use it:
sqlldr userid=chris/*****@db control=ldr.ctl
It loads zero into Z:
select * from t;
X Y Z
1 1 0
2 2 0