Shell執行DB2 SQL 返回值

2021-08-20 15:23:42 字數 1002 閱讀 4507

shell**  

#!/usr/bin/env sh  

dbnode='nodename'

dbuser='username'

dbpassword='password'

conndb2()  

"exit -1

fi  

}  releasedb2()  

run() $ $  

sql="  

select   

area_id ,areaname  

from   

pt.area  

"  db2 -x $| while read area_id areaname  

do  

echo "result:$->$"

done  

releasedb2  

}  echo "execute sql ................."

run  

如果有必要可以通過執行完sql後$?的結果來判斷是不是執行成功

shell**  

if [ "$?" -ne "0" ]  

then echo "execute error"

exit -1

fi   

下面是db2文件中找到的返回值的含義

the return code can be one of the following:

code  description

0     db2 command or sql statement executed successfully

1     select or fetch statement returned no rows

2     db2 command or sql statement warning

4     db2 command or sql statement error

8     command line processor system error

db2sql語句優化

最經專案中要用到乙個樹形載入結構,由於底層資料有點多,再加上sql語句沒有怎麼優化,所以頁面資料載入的時候特別慢。只查詢底層資料的話就需要七八秒中,後來經過別人的指點從新優化sql後,底層資料的載入查詢控制在了200毫秒以為。現在就貼上我的sql語句,供大家看一下 沒有優化的sql語句 select...

DB2 SQL語句筆記

1 case when語句 sql中的case when使用,case具有兩種格式 簡單case函式和case搜尋函式。簡單case函式 case when 1 then 男 when 2 then 女 else 其他 end case搜尋函式 case when 1 then 男 when 2 t...

DB2 SQL語句的優化

最近在做一銀行的優化專案,由於正在學習中,所以做的一些筆記 1.sql語句除了引號內的特殊字元,其他的語句都要大寫。2.多表聯查,資料量按從少到多排列,當然第乙個主表通常資料量比較大,因為第乙個表通常為主表,但是從第二個表就要資料量從少到多排列了 如果遇到兩張表的資料一大一小,小表只能跟大表關聯,大...