From Oramosswiki
#!/bin/sh
PID=$$
SCALE_FACTOR=$1
TABLE_TO_LOAD=$2
CONNECTION=$3
TOTAL_STREAMS=$4
STREAM=$5
case ${TABLE_TO_LOAD}
in
l) TABLE_NAME1="region";
TABLE_NAME2="nation";;
r) TABLE_NAME1="region";
TABLE_NAME2="";;
n) TABLE_NAME1="nation";
TABLE_NAME2="";;
s) TABLE_NAME1="supplier";
TABLE_NAME2="";;
c) TABLE_NAME1="customer";
TABLE_NAME2="";;
p) TABLE_NAME1="part";
TABLE_NAME2="partsupp";;
o) TABLE_NAME1="orders";
TABLE_NAME2="lineitem";;
P) TABLE_NAME1="part";
TABLE_NAME2="";;
S) TABLE_NAME1="partsupp";
TABLE_NAME2="";;
O) TABLE_NAME1="orders";
TABLE_NAME2="";;
L) TABLE_NAME1="lineitem";
TABLE_NAME2="";;
esac
DATA_FILENAME1=${TABLE_NAME1}".tbl";
CONTROL_FILENAME1=${TABLE_NAME1}".ctl";
LOG_FILENAME1=${TABLE_NAME1}".log";
BAD_FILENAME1=${TABLE_NAME1}".bad";
if [ "${TABLE_NAME2}" != "" ]
then
DATA_FILENAME2=${TABLE_NAME2}".tbl";
CONTROL_FILENAME2=${TABLE_NAME2}".ctl";
LOG_FILENAME2=${TABLE_NAME2}".log";
BAD_FILENAME2=${TABLE_NAME2}".bad";
fi
if [ ${TOTAL_STREAMS} -gt 1 ]
then
DATA_FILENAME1=${DATA_FILENAME1}"."${STREAM};
LOG_FILENAME1=${LOG_FILENAME1}"."${STREAM};
BAD_FILENAME1=${BAD_FILENAME1}"."${STREAM};
if [ "${TABLE_NAME2}" != "" ]
then
DATA_FILENAME2=${DATA_FILENAME2}"."${STREAM};
LOG_FILENAME2=${LOG_FILENAME2}"."${STREAM};
BAD_FILENAME2=${BAD_FILENAME2}"."${STREAM};
fi
fi
echo "DATA_FILENAME1: "${DATA_FILENAME1}
echo "CONTROL_FILENAME1: "${CONTROL_FILENAME1}
echo "LOG_FILENAME1: "${LOG_FILENAME1}
echo "BAD_FILENAME1: "${BAD_FILENAME1}
echo "DATA_FILENAME2: "${DATA_FILENAME2}
echo "CONTROL_FILENAME2: "${CONTROL_FILENAME2}
echo "LOG_FILENAME2: "${LOG_FILENAME2}
echo "BAD_FILENAME2: "${BAD_FILENAME2}
echo "PID: "${PID}
echo "SCALE_FACTOR: "${SCALE_FACTOR}
echo "TABLE_TO_LOAD: "${TABLE_TO_LOAD}
echo "CONNECTION: "${CONNECTION}
echo "TOTAL_STREAMS: "${TOTAL_STREAMS}
echo "STREAM: "${STREAM}
# Use DBGEN to create the stream data file...
dbgen -s ${SCALE_FACTOR} -T ${TABLE_TO_LOAD} -v -S ${STREAM} -C ${TOTAL_STREAMS} -f
# Now load the first data file into Oracle...
sqlldr ${CONNECTION} control=${CONTROL_FILENAME1} data=${DATA_FILENAME1} bad=${BAD_FILENAME1} log=${LOG_FILENAME1} direct=true parallel=true
# Now load the second data file into Oracle - if it exists...
if [ "${TABLE_NAME2}" != "" ]
then
sqlldr ${CONNECTION} control=${CONTROL_FILENAME2} data=${DATA_FILENAME2} bad=${BAD_FILENAME2} log=${LOG_FILENAME2} direct=true parallel=true
fi