国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

C#調(diào)用ORACLE存儲(chǔ)過程返回結(jié)果集及函數(shù)

2024-07-21 02:17:49
字體:
供稿:網(wǎng)友
 

oracle段:
首先在oracle建立package和package body,將在這里面定義函數(shù)和存儲(chǔ)過程返回結(jié)果集。
1:建立package:
create or replace package scott.pk_wt
is
type mytype is ref cursor;
procedure p_wt(mycs out mytype);
function f_get(str in varchar2)
return varchar2;
end;
/
說明:其實(shí)package只是個(gè)聲明罷了。我們?cè)谶@里定義了一個(gè)存儲(chǔ)過程返回結(jié)集和一個(gè)函數(shù),返回字符串。

2:建立package body:
create or replace package body scott.pk_wt
is
procedure p_wt(mycs out mytype)
is
begin
open mycs for select * from test;
end p_wt;

function f_get(str varchar2)
return varchar2
is
str_temp varchar2(100) := 'good luck!';
begin
str_temp := str_temp || str;
return str_temp;
end f_get;

end pk_wt;
/
說明:這里建立package body是具體的說明和使用,將采用什么方式實(shí)現(xiàn)。。

c#段:
在c#中代碼將分為兩部分,一部分是使用函數(shù),另外一部分是使用結(jié)果集。
定義一個(gè)連接,從webconfig里去取得:
private oracleconnection orcn=new oracleconnection(system.configuration.configurationsettings.appsettings["scott"]);
c#調(diào)用oracle函數(shù):
oraclecommand cmd=new oraclecommand("pk_wt.f_get",orcn);
   cmd.commandtype=commandtype.storedprocedure;
   oracleparameter p1=new oracleparameter("str",oracletype.varchar,10);
   p1.direction=system.data.parameterdirection.input;
   p1.value=this.textbox1.text;
   oracleparameter p2=new oracleparameter("result",oracletype.varchar,100);
   p2.direction=system.data.parameterdirection.returnvalue;
   cmd.parameters.add(p1);
   cmd.parameters.add(p2);
   orcn.open();
   cmd.executenonquery();
   orcn.close();
   this.button_function.text=p2.value.tostring();
其中result是系統(tǒng)自定義的函數(shù)返回變量,特別要注意的是,函數(shù)的參數(shù)的返回類型要指定,另外就是command類型也需要指定,另外和一般的存儲(chǔ)過程沒什么差別。

c#調(diào)用oracle返回結(jié)果集:
oraclecommand cmd=new oraclecommand("pk_wt.p_wt",orcn);
   cmd.commandtype=commandtype.storedprocedure;
   oracleparameter p1=new oracleparameter("mycs",oracletype.cursor);
   p1.direction=system.data.parameterdirection.output;
   cmd.parameters.add(p1);
   oracledataadapter da=new oracledataadapter(cmd);
   dataset ds=new dataset();
   da.fill(ds,"test");
   this.datagrid1.datasource=ds;
   this.datagrid1.databind();
這里沒什么可說的類。。只是定義的數(shù)據(jù)類型是游標(biāo),類型是output,另外沒什么了。。
 

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 花垣县| 肃南| 渝中区| 铜鼓县| 寻甸| 嘉善县| 朝阳县| 铁岭县| 德格县| 读书| 三亚市| 安图县| 鄱阳县| 禄丰县| 南开区| 广宗县| 运城市| 哈尔滨市| 通山县| 随州市| 巨鹿县| 泸定县| 娱乐| 上栗县| 荥经县| 海城市| 潞西市| 宁晋县| 肥乡县| 安庆市| 岳阳市| 九龙县| 海晏县| 绥中县| 玛纳斯县| 万盛区| 凤翔县| 铜鼓县| 罗山县| 宜兰县| 蚌埠市|