c# winform 如何执行oracle 存储过程?

 我来答
百度网友fc9fa9c
推荐于2016-11-03 · TA获得超过363个赞
知道小有建树答主
回答量:184
采纳率:0%
帮助的人:164万
展开全部
举个例子: 在数据库中创建一个存储过程。这里直接举例命名为getRecord,有一个输入参数sid,输出的变量sname
开始连接数据库:

OracleConnection OC1 = new OracleConnection("Data Source=sos;Persist Security Info=True;User Id=MYTEST; Password=MYTEST");
OC1.Open();
OracleCommand orclCMD = new OracleCommand(); //初始化一个命令对象
orclCMD .Connection = OC1;
orclCMD .CommandText = "getrecord"; //存储过程名
orclCMD .CommandType = CommandType.StoredProcedure;//表面是存储过程

如果创建存储过程是有变量,所以还要声明变量
OracleParameter IdIn = testCMD.Parameters.Add("sid", OracleType.Int32, 11); //输入参数
IdIn.Direction = ParameterDirection.Input;

IdIn.Value = Convert.ToInt32(从界面获取输入的变量); //获得 stuid 号。
//测试时,可直接写成 IdIn.Value = 2 这样的形式

//如果创建存储过程是还定义了输出变量
OracleParameter NumTitles = testCMD.Parameters.Add("sname", OracleType.VarChar, 110);//输出参数
NumTitles.Direction = ParameterDirection.Output;
//测试执行存储过程影响的行数
testCMD.ExecuteNonQuery();
// 注意获得参数的方式: testCMD.Parameters["sname"] ;这个是在存储过程中有输出的变量需要这样子,如果没有输出变量,可以不写。
MessageBox.Show(testCMD.Parameters["sname"].Value.ToString());
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式