UNIX主机文件导入数据库方法以及sqlldr在AIX主机使用方法
发布时间:2020-12-15 16:17:48 所属栏目:安全 来源:网络整理
导读:sqlldr使用方法 DATABASE=admin/password@INSTANCE_NAME sqlldr $DATABASE data=TEMP.txt control=temp.ctl skip=1 load=200000 errors=100 rows=1000 bindsize=33554432 参数说明: $DATABASE //数据库连接 data //原数据文件 control //sqlldr控制文件位置
sqlldr使用方法DATABASE=admin/password@INSTANCE_NAME sqlldr $DATABASE data=TEMP.txt control=temp.ctl skip=1 load=200000 errors=100 rows=1000 bindsize=33554432参数说明: $DATABASE //数据库连接 data //原数据文件 control //sqlldr控制文件位置 skip=1 //表示跳过第一行,从第二行开始导入 load=200000 //表示并不导入所有的数据,只导入跳过skip参数后的200000条数据 rows=1000 //表示一次加载的行数,默认值为64,此处设置为1000 errors=100 //表示出错100次后,停止加载 bindsize=33554432 //表示每次提交记录缓冲区的大小,默认256k temp.ctl 内容 数据用换行分割 load data append INTO TABLE testtable trailing nullcols ( testdate terminated by 'rn' ) test.txt 文件数据 ------------------head--------------- 000001 000002 000003 000004 文件导入例子DATABASE=admin/password@INSTANCE_NAME for FILENAME in `ls test.txt` do awk -F. '{print $0}' $FILENAME>TEMP_$FILENAME.txt echo "n读取数据" #获取文件行数 num=`cat $FILENAME|wc -l` #一般文件都有首行说明不需要入库可以删除,统计实际行数 recnum=`expr $num-1` sqlldr $DATABASE data=TEMP_$FILENAME.txt control=temp.ctl skip=1 load=$recnum rm TEMP_$FILENAME.txt echo "读取数据结束" done sqlplus -s $DATABASE << EOF set heading off feedback off pagesize 0 verify off echo off exit; EOF(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |