[C#操作ORACLE数据库示例.doc

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 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

文档评论(0)

xiaoyi2013 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档