當前位置:首頁 » 存儲配置 » 存儲過程調用數組參數傳遞

存儲過程調用數組參數傳遞

發布時間: 2022-12-08 00:11:43

『壹』 jsp調用存儲過程是如何把一個數組作為參數傳遞

沒遇到過傳數組的,如果要傳數組的話,都是把數組組合成一個字元串再傳給存儲過程,舉個例子,存儲過程中有select
name
from
student
where
id
in
(idVarArr)這樣的語句,
這個idVarArr就是要傳遞進去的參數,你傳入前就把數組變成類似"'id1','id2','id3',..."的字元串再傳存儲過程就可以了.這是通用處理方式

『貳』 WebService調用oracle存儲過程,傳入數組參數

你要在webservice中編寫相應的調用存儲過程的介面,具體看你應用的什麼語言技術。比如下面java調用存儲過程如下:
Session session = HibernateSessionFactory.getSession();
//連接對象
Connection conn = null;
//數據集對象
ResultSet rs = null;
//用來取得表列明的 對象
ResultSetMetaData rsmd = null;
CallableStatement proc = null;
conn = session.connection();
conn.setAutoCommit(false);
try {

if (conn != null) {
proc = conn.prepareCall("{call 存儲過程包名過程名(n個傳入參數對應n個問號,返回參數或游標?佔位) }");
// 如下過程PKG_GETDATA有4個傳入參數,所有在程序包是PKG_QUERY
//proc = conn.prepareCall("{call PKG_QUERY.PKG_GETDATA(?,?,?,?,?) }");
proc.setString(1, 參數);
//依次按照傳入參數順序與?問號位置傳入所有參數
//最後傳入n個參數後一位的返回遊標
//proc.registerOutParameter(n+1, oracle.jdbc.OracleTypes.CURSOR);
proc.execute();
rs = (ResultSet) proc.getObject(n+1);
conn.commit();
}

可以將上面代碼寫成一個公用的調用存儲過程的通用介面。

別人調用你的webservice 可以具體的參數個數及順序傳遞給你的介面,也可以傳遞一個object數組

『叄』 mysql的存儲過程怎麼傳入數組參數

沒試過往裡面傳數組,一般都是多傳幾個參數,把幾個參數放入SqlParameter[]中,然後cmd.Parameters.AddRange(pars);
創建方法:
SqlParameter[] paras = new SqlParameter[]
{
new SqlParameter("@PageIndex","ccc"),
new SqlParameter("@PageSize","ccc"),
new SqlParameter("@StrSql","ccc")
};
ccc就是你想傳入的值,帶@的就是你在存儲過程中定義的參數。
算是一種另類的數組吧。要不你就把所有條件組合成一個字元串,中間用特殊符號隔開,到資料庫用split方法再分回來,不過這個方法比較麻煩,不推薦

『肆』 在pb里調用存儲過程的時候,如何傳遞數組變數

你調用的存儲過程需要的變數放在一個數組中了是吧,你的數組是怎麼存儲變數的,比如:存儲過程需要兩個變數@year char(4),@month integer,這兩個變數是怎麼存儲在數組中的呢?比如是這樣存儲的吧 @year + @month ,這樣的格式存儲的數組
string ls_string,ls_year
integer li_month,li_persion
array a[]
FOR li_count = 1 to LowerBound(arrary) //數組名
ls_string = a[li_count]
li_persion = pos(ls_string,'+')
ls_year = mid(ls_string,1,li_persion - 1)
li_month =integer(mid(ls_string,li_persion + 1 )
DECLARE pc PROCEDURE FOR proc
@year = :ls_year,
@month = :li_month
USING sqlca;

EXECUTE pc ;

NEXT

熱點內容
4399賬號綁定qq怎麼改密碼 發布:2025-09-24 01:52:15 瀏覽:743
資料庫access2010教程 發布:2025-09-24 01:42:13 瀏覽:901
臨時存儲器 發布:2025-09-24 01:38:33 瀏覽:710
跟蹤測演算法 發布:2025-09-24 01:37:42 瀏覽:207
如何編譯內核模塊 發布:2025-09-24 01:14:47 瀏覽:754
王者榮耀官方伺服器地址 發布:2025-09-24 00:47:29 瀏覽:192
gif在線壓縮免費 發布:2025-09-24 00:41:13 瀏覽:947
tcl腳本if 發布:2025-09-24 00:26:59 瀏覽:709
蘋果手機怎麼連個人安卓手機熱點 發布:2025-09-24 00:20:46 瀏覽:133
虛擬專用賬號密碼在哪裡注冊 發布:2025-09-23 23:57:20 瀏覽:181