db2創(chuàng)建存儲(chǔ)過(guò)程 如何執(zhí)行db2存儲(chǔ)過(guò)程?
如何執(zhí)行db2存儲(chǔ)過(guò)程?1、db2 create database 數(shù)據(jù)庫(kù)名 call 存儲(chǔ)過(guò)程名(參數(shù)1,參數(shù)2)5、驗(yàn)證插入數(shù)據(jù)是否成功Windows 下:db2 select count(*)
如何執(zhí)行db2存儲(chǔ)過(guò)程?
1、db2 create database 數(shù)據(jù)庫(kù)名 call 存儲(chǔ)過(guò)程名(參數(shù)1,參數(shù)2)5、驗(yàn)證插入數(shù)據(jù)是否成功Windows 下:db2 select count(*) from FTOTP_USERINFOAIX 下:db2 select count(*) from FTOTP_USERINFOWindows 下:db2 select count(*) from FTOTP_TOKENINFOAIX 下:db2 select count(*) from FTOTP_TOKENINFO
如何執(zhí)行db2存儲(chǔ)過(guò)程?
1、db2 create database 數(shù)據(jù)庫(kù)名
2、db2 connect to 數(shù)據(jù)庫(kù)名 user 用戶名 using 用戶密碼
3、db2 -tvf otpdb_v3_db2.sql
4、db2 -td@ -f 存儲(chǔ)過(guò)程文件絕對(duì)路徑
4、調(diào)用存儲(chǔ)過(guò)程:
Windows 下:db2 call 存儲(chǔ)過(guò)程名(參數(shù)1,參數(shù)2)
AIX 下:db2
db2=>call 存儲(chǔ)過(guò)程名(參數(shù)1,參數(shù)2)
5、驗(yàn)證插入數(shù)據(jù)是否成功
Windows 下:db2 select count(*) from FTOTP_USERINFO
AIX 下:db2
db2=>select count(*) from FTOTP_USERINFO
Windows 下:db2 select count(*) from FTOTP_TOKENINFO
AIX 下:db2
db2=>select count(*) from FTOTP_TOKENINFO
DB2存儲(chǔ)過(guò)程調(diào)用存儲(chǔ)過(guò)程?
db2的存儲(chǔ)過(guò)程也可以執(zhí)行動(dòng)態(tài)SQL,你可以把"001","002" 檔次一個(gè)參數(shù)傳進(jìn)存儲(chǔ)過(guò)程,然后聲明一個(gè)變量:
create or replace procedure test(in in_where varchar(100)) --創(chuàng)建一個(gè)存儲(chǔ)過(guò)程test,并可以傳入字符串作為參數(shù)declare v_sql varchar(512) set v_sql = " delete from table1 where field1 in (" concat in_where concat ") " -- 這里是把傳進(jìn)來(lái)的where語(yǔ)句拼起來(lái)execute immediate v_sql --這里是把語(yǔ)句進(jìn)行執(zhí)行--------- 類(lèi)似以上這樣的存儲(chǔ)過(guò)程,使用以下的放在進(jìn)行執(zhí)行即可:call test( " ""001"",""002"" ") --內(nèi)容中的一個(gè)‘ 需要使用 ’‘ 進(jìn)行轉(zhuǎn)義