informix批量数据文件导入库sh程序

这是一个在RedHat Linux AS4上测试通过的Shell脚本,用于处理Informix数据库的多个数据文件导入。脚本中包含对数据表的TRUNCATE操作,适合批量清理并导入数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

此sh主要是针对Informix数据库中对于多个数据库数据文件的处理,注意其中的truncate语句,如果每个数据文件就是一个数据表,那么truncate table ${TABLE};就可以加到database ${DATABASE}后面.

此段sh程序在RedHat Linux AS4 上测试通过,应该适应于大多数UNIX或Linux操作系统.

 

# !/bin/skh

if  [ $ #  != 2 ]
then
   echo 
" Usage : $0 dirname errlogfilename  "
   
exit   1
fi

DIRNAME
= $ 1
LOGFILE
= $ 2

echo 
/ dev / null  >  ${LOGFILE}

DATABASE
= migdbs

LOAD(  )
{
# truncate table ${TABLE};
dbaccess  <<!    2 >/ tmp / tmp121213
   database ${DATABASE};
   load from ${FILENAME} insert into ${TABLE};
!

if  [ $ ?   !=   0  ]
then 
   echo 
" Load table[${TABLE}] file[${FILENAME}] error. "   >>  ${LOGFILE}
   
return   1 ;
fi 

echo `cat 
/ tmp / tmp121213  |   grep   " row(s) loaded " `

}

cd ${DIRNAME}

TABLELIST
= `ls  *. txt`
for  FILENAME in  $TABLELIST
{
    
# LEN=`echo $ii |awk '{print length( $0 )}'`   
    LEN = `echo ${FILENAME}  | wc  - c`   
    END
= `expr ${LEN}  -   10  `
    TABLE
= t_`echo ${FILENAME}  |  cut  - c1 - ${END}`
    echo 正在导入表[${TABLE}] 文件为[${FILENAME}]
    LOAD migdbs ${TABLE} ${FILENAME}  
    echo 
""
}
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值