occi连接mysql数据库_C# 使用OCCI 连接Oracle 数据库

最近因需要研究了一下C#向Oracle数据库中插入数据的问题,通常情况下使用微软自带的组件ADO.NET来连接并操作数据库,这也是最简便

最近因需要研究了一下C#向Oracle数据库中插入数据的问题,通常情况下使用微软自带的组件ADO.NET来连接并操作数据库,这也是最简便的方式,用法也比较简单,即在程序开头加上using System.Data.OracleClient。另外就是使用Oracle提供的ODP.net,这需要下载ODAC,并在程序中引用Oracle.DataAccess.dll。

接下来写程序测试向数据库中插入记录的速度了,首先尝试使用ADO.net。

部分代码如下:

C#程序运行在Windows Server 2008 32位上,机器为Xeon E552O * 2,2.27Ghz,共16核内存12GB。Oracle 安装在RedHat AS4U4,cpu为AMD Opterron 275 * 2 ,2.2GHz,共4核心,,内存16GB,oracle 10g。

测试结果为33秒左右,每秒插入不到700条,之后也采用了绑定变量及调用存储过程等方法,插入速度也没有多大提高。

于是想到了用ODP.net,在网上查到说ODAC的版本必须与安装的oracle对应,虽然这个要求感觉不太灵活,因为实际的使用环境可能与开发环境不一致,到时还要更换ODAC的版本,且ODAC在官网上并不是能对应上所有的Oracle版本。在网上看到使用ODP.net插入速度可以达到数万条每秒,但我多次尝试时,都在运行时出现问题,根本无法运行成功。于是便放弃了。Oracle与MS的东西兼容性不强,或者说是Oracle本身向下兼容的能力弱,真是令人抓狂。

多方查找后发现了OCI这个东西,于是想到了使用封装了OCI的OCCI,这样眼前突然一亮。之后的思路就很清淅了,先用c++做一个dll,里面的函数是对OCCI的进行一步封装,再用c#调用这个dll就可以了。下面就是实现的具体过程了。

logo.gif

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值