⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 load.txt

📁 Unix环境下用Shell编写的Oracle数据库数据批量导入导出程序
💻 TXT
字号:
USAGE="usage : $0 -u user/passwd -t tablename [-f path] [-a] [-p sepchar]"INFILE="./myload.txt"uflag=0tflag=0aflag=0fflag=0SEPCHAR='|'while getopts :au:t:f:p: ido	case $i in		a )			aflag=1;;		u )			uflag=`expr $uflag + 1`			USER=$OPTARG;;		t )			tflag=`expr $tflag + 1`			TABLE=$OPTARG			if [ $fflag -ne 1 ]			then				INFILE=${OPTARG}.txt			fi			;;		f )			fflag=`expr $fflag + 1`			INFILE=$OPTARG;;		p )			SEPCHAR=$OPTARG;;		? )			echo $USAGE			exit 2;;	esacdoneif [ $uflag -ne 1 ]then	echo $USAGE	exit 2fiif [ $tflag -ne 1 ]then	echo $USAGE	exit 2fisqlplus $USER<<! >/tmp/$TABLE.descdesc $TABLE!echo LOAD DATA >/tmp/$TABLE.ctlecho INFILE \'$INFILE\' >>/tmp/$TABLE.ctlecho BADFILE \'$TABLE.bad\' >>/tmp/$TABLE.ctlecho DISCARDFILE \'$TABLE.dsc\' >>/tmp/$TABLE.ctlecho DISCARDMAX 50 >>/tmp/$TABLE.ctlif [ $aflag -eq 1 ]then	echo INTO TABLE $TABLE TRUNCATE >>/tmp/$TABLE.ctlelse	echo INTO TABLE $TABLE APPEND >>/tmp/$TABLE.ctlfiecho FIELDS TERMINATED BY \'$SEPCHAR\' >>/tmp/$TABLE.ctlecho '(' >>/tmp/$TABLE.ctlflag=0iflag=0sed -e'/^$/d' /tmp/$TABLE.desc|while read line do	head=`expr "$line" : "\(....\).*"`	if [ $head = "SQL>" ]	then 		if [ $flag -eq 0 ]		then			flag=4		else			break		fi		fi	if [ $flag -gt 1 ]	then		iflag=1;		flag=`expr $flag - 1`	fi		if [ $flag -eq 1 ]	then		if [ $iflag -ne 0 ]		then 			iflag=0		else			echo ,		fi				head=`expr "$line" : "^[ ]*\([A-Z_][A-Z_0-9]*\).*"`		echo $head	fidone >>/tmp/$TABLE.ctlecho ')' >>/tmp/$TABLE.ctlsqlldr $USER /tmp/$TABLE.ctl#rm /tmp/$TABLE.desc#rm /tmp/$TABLE.ctl

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -