在工作中用到了Oracle數據庫,需要調用Oracle的Function,Function返回的游標和結果都是通過參數來獲取的
比如Function定義如下:
1
FUNCTION getlinkuserinfo(inintuserid
INTEGER,
2 ininttype INTEGER,
3 outcurlist OUT ref_cursor) RETURN INTEGER IS
4 BEGIN
5 OPEN outcurlist FOR
6 SELECT *
7 FROM tbuserlink
8 WHERE qidianuserid = inintuserid AND
9 intype = decode(ininttype, - 1, intype, ininttype) AND
10 status = 0;
11
12 RETURN 0;
13 END;
2 ininttype INTEGER,
3 outcurlist OUT ref_cursor) RETURN INTEGER IS
4 BEGIN
5 OPEN outcurlist FOR
6 SELECT *
7 FROM tbuserlink
8 WHERE qidianuserid = inintuserid AND
9 intype = decode(ininttype, - 1, intype, ininttype) AND
10 status = 0;
11
12 RETURN 0;
13 END;
1 IDataParameter[] paramArray =
new IDataParameter[]{
2 ado.GetReturnParameter(),
3 ado.GetParameter( " inintuserid ", DbType.Int32, userid),
4 ado.GetParameter( " ininttype ", DbType.Int32, typeid),
5 ado.GetParameter( " outcurlist ", DbType.Object, ParameterDirection.Output)
6 };
2 ado.GetReturnParameter(),
3 ado.GetParameter( " inintuserid ", DbType.Int32, userid),
4 ado.GetParameter( " ininttype ", DbType.Int32, typeid),
5 ado.GetParameter( " outcurlist ", DbType.Object, ParameterDirection.Output)
6 };
一點點心得,記下了!!!
最后,Function如果定義在Package 里面的話,調用的時候要加上package