用shell抽取,更新db2的数据

2023-12-04 0 791

正在看的db2教程是:用shell抽取,更新db2的数据。为工作需要而写的shell处理db2数据库的程序用shell抽取db2的数据,并进行处理。

#SQL文定义SQL=\”SELECT AAA, BBB, CCC FROM MYTBL1\”#执行SQLSDATA=`db2 \”$SQL\”`#返回值判断if [ $? -ne 0 ]then#显示db2返回的错误信息echo \”$SDATA\”exit 1fi#对取得的数据进行处理。echo \”$SDATA\” | sed -e \’4,/^$/!d;/^$/d\’ |while read AAA BBB CCCdoecho \”AAA IS $AAA, BBB IS $BBB, CCC IS $CCC\”done#取得数据件数echo \”$SDATA\” | sed -n -e \’/^$/{1,3d;n;s/[^0-9]*\\([0-9]*\\)[^0-9]*/\\1/;p;}\’ | read CNTecho \”The count of selected data is $CNT.\”exit 0★更新db2的数据,并取得更新结果

SQL=\”UPDATE MYTBL1 SET AAA=\’2005\’,BBB=\’05\’,CCC=\’12\’\”#执行SQLSDATA=`db2 -a \”$SQL\”`#取得SQLCODEecho \”$SDATA\” | sed -n -e \’s/^.*sqlcode: \\([-,0-9][0-9]*\\).*/\\1/p\’ | read SQLCODEecho \”Sqlcode is $SQLCODE.\”#取得SQLSTATEecho \”$SDATA\” | sed -n -e \’s/^.*sqlstate: \\([-,0-9][0-9]*\\).*/\\1/p\’ | read SQLSTATEecho \”Sqlstate is $SQLSTATE.\”#取得更新件数(即sqlerrd的第三个值)echo \”$SDATA\” | sed -n -e \’/sqlerrd/s/^.*(3) \\([-,0-9][0-9]*\\).*/\\1/p\’ | read UPDCNTecho \”Updated data\’s count is $UPDCNT.\”#取得sqlerrd的第五个值echo \”$SDATA\” | sed -n -e \’/sqlerrd/{n;s/^.*(5) \\([-,0-9][0-9]*\\).*/\\1/;p;}\’ | read SQLERRD5echo \”Sqlerrd(5) is $SQLERRD5.\”

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 DB2 用shell抽取,更新db2的数据 https://www.u-9.cn/database/db2/69340.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务