- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[C#操作ORACLE数据库示例
CREATE TABLE SCOTT.TEST (UID VARCHAR2(10 byte) NOT NULL,
UNAME VARCHAR2(10 byte) NOT NULL, UAGE VARCHAR2(10 byte)
NOT NULL)
在.NET中调用Oracle9i存储过程可以用多个数据提供者,比如OralceClient,OleDb。本文将用OralceClient为例。.NET语言用C#。
一、调用一个带输入、输出参数的存储过程
首先,在Oralce中创建存储过程如下:
create or replace procedure scott.GetRecords(name_out out varchar2,age_in in varchar2) as
begin
select NAME into name_out from scott.test where AGE = age_in;
end;
然后,在C#项目中作如下调用:
string connectionString = Data Source=YXZHANG;User ID=YXZHANG;Password=YXZHANG;
string queryString = getrecords;
OracleConnection cn = new OracleConnection(connectionString);
OracleCommand cmd = new OracleCommand(queryString,cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(name_out,OracleType.VarChar,20);
cmd.Parameters[name_out].Direction = ParameterDirection.Output;
cmd.Parameters.Add(age_in,21);
try
{
cn.Open();
cmd.ExecuteNonQuery();
Console.WriteLine(Name is:{0},cmd.Parameters[name_out].Value.ToString());
cn.Close();
}
catch( OracleException ex )
{
Console.WriteLine(Exception occurred!);
Console.WriteLine(The exception message is:{0},ex.Message.ToString());
}
finally
{
Console.WriteLine(------------------End-------------------);
}
小结:
以上是很平常的调用方法,但是我在做这个示例程序的时候,却不是那么一帆风顺。这里要指出OracleClient的一个不尽如人意之处,就是对于参数名称,必须和存储过程定义中的参数同名,否则就会报错。比如将代码中的“name_out”改为别的名称的话,就会报异常。但我试着用OleDb代替OralceClient,却没有这个问题。不知道在新版本的数据提供程序中会否改进这一点?
二、调用不返回数据的存储过程
首先,在Oralce中创建存储过程如下:
create or replace procedure insertRecord(UserID in varchar2,
UserName in varchar2,
UserAge in varchar2) is
begin
insert into test values (UserID, UserName, UserAge);
end;
然后,在C#项目中作如下调用:
string connectionString = Data Source=YXZHANG;User ID=YXZHANG;Password=YX
您可能关注的文档
最近下载
- 对照《中国共产党纪律处分条例》排查梳理违纪风险点(共30条,包含产生因素和防范举措).docx VIP
- 初中物理教师招聘选调考试精彩试题.docx
- 房屋租赁合同70582.doc
- 初中物理探究式教学研究结题报告草稿.doc
- 培训机构辅导班兼职教师聘用合同协议.doc
- 2022-2023学年北京市西城区高二下学期期末考试语文试题(解析版).docx
- 舞剧的僭越——作为符号的舞蹈诗剧《只此青绿》.pdf VIP
- DB53/T 2007-2015- 钢筋保护层混凝土垫块质量检测技术规程.pdf
- 初中物理教师招聘选调考试试题(2).doc VIP
- 学前儿童社会教育(学前儿童社会教育活动指导)-国家开放大学电大期末纸考卷考题目答案.pdf
文档评论(0)