您的位置:首页 > 数据库 > Oracle

大家一起分享C#调用oracle存储过程

2004-09-21 11:07 471 查看
大家一起分享C#调用oracle存储过程



执行结果
      


 
      


 
     


 
Oracle方面
1.创建Oracle过程存储
create or replace procedure proce_test(paramin in varchar2,paramout out varchar2,paraminout in out varchar2)
as
  varparam varchar2(28);
begin
  varparam:=paramin;
  paramout:=varparam|| paraminout; 
end;

2.测试过程存储
declare
  param_out varchar2(28);
  param_inout varchar2(28);
begin
  param_inout:='ff';  
  proce_test('dd',param_out,param_inout);  
  dbms_output.put_line(param_out);
end;
 
测试结果:ddff
C#方面
1.创建界面
 

类型对象名Text属性值
ButtonButton1调用
LabelLabel1a:
LabelLabel2b:
Labelm_inputinput
Labelm_input_outputinputoutput
Labelm_Print显示:
TextBoxm_TxtI 
TextBoxm_TxtIO 
 
2.显示代码
 
(1) 引用oracle的组件
    在代码中添加 using System.Data.OracleClient;
(2) 在界面上双击“调用”按钮,编写如下代码:
private void Button1_Click(object sender, System.EventArgs e)
         {
              string mConn="data source=ora9i.ora.com;user id= ora;password= ora ";//连接数据库
              conn=new OracleConnection(mConn);
              cmd=conn.CreateCommand();
              cmd.CommandText="proce_test";//存储过程名
              cmd.CommandType=CommandType.StoredProcedure;//声明调用存储过程
              //存储过程的参数,paramin代表参数名,OracleType.VarChar代表参数类型,20代表参数的大小
              OracleParameter param_in=cmd.Parameters.Add("paramin",OracleType.VarChar,20);
              param_in.Direction=ParameterDirection.Input;//代表参数的存储方式
              param_in.Value=m_TxtI.Text;
OracleParameter param_out=cmd.Parameters.Add("paramout",OracleType.VarChar,20);
              param_out.Direction=ParameterDirection.Output;
OracleParameter param_inout=cmd.Parameters.Add("paraminout",OracleType.VarChar,20);
              param_inout.Direction=ParameterDirection.InputOutput;
              param_inout.Value=m_TxtIO.Text;
              conn.Open();
              //执行存储过程
              cmd.ExecuteNonQuery();
              //返回参数的值
              m_Print.Text="显示:"+param_out.Value.ToString();
              conn.Close();
}
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: