Asp.Net 远程连接Oracle数据库

时间:2023-03-09 08:39:55
Asp.Net 远程连接Oracle数据库
Asp.Net 远程连接Oracle数据库

首先从微软停止.Net FrameWork支持Oracle数据库的研发,转为第三方提供说起,微软是很有实力的公司,他在桌面领域令其他对手望其项背,产品战线也从桌面延伸到数据库服务器,集群服务器,但微软在企业方向的发展总是难以突破,我想着与他们太过商业化的企业理念有关吧.

下面是asp.net连接远程Oracle数据库服务器步骤:

1.asp.net连接oracle服务器需要添加Sytem.Data.OracleClient命名空间。

2.连接时需要ConnectionString字符串,出现在web.config文件中,如下所示:

<connectionStrings>
<add name="ConnectionString" connectionString="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=你的数据库服务器ip)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=你的数据库实例名)));User ID=scott;Password=tiger;Unicode=True" providerName="System.Data.OracleClient"/>
</connectionStrings>

上面的连接字符串添加了tns解析字符串,不需要再有OracleClient,否则需要安装,经过上面两步,在.Net Framework 2.0中远程连接Oracle 10g数据库服务器测试通过。
==========================================

asp.net 连接oracle,报错误。“System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本。

以前做过.net 连接oracle,那时候都是本机安装的oracle服务端,所以连接没有问题。这次就不行了,本机安装了,做的没啥问题,但是上传到服务器,就完蛋了,报错。

经过一天多的研究,我终于找到问题了,网上虽然有一系列这个问题,但是没有解决我这个问题的。

问题就是,asp.net连接oracle数据库需要安装一下驱动。

1,可以安装 一些oracle的服务端。

2,oracle提供了一个建议连接库,不用安装,配置一下就好了。名字是 :Instant Oracle

关于Instant Oracle的介绍请看http://www.oracle.com/technetwork/database/features/oci/index.html

Instant Oracle的下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

选择操作系统,和oracle版本。下载的时候要注册的。 下载完之后,直接解压就可以,当然里边主要是一些dll文件。

安装Instant Oracle

其实不需要安装,解压就可以了

解压后的instantclient_10_2

这里边有一些dll。主要的是:

  • OCI Instant Client Data Shared Library
    • oraociei10.dll (Basic version)
  • Client Code Library
    • oci.dll
  • Security Library
    • orannzsbb10.dll
  • OCCI Library
    • oraocci10.dll

然后,在配置一下环境变量。

系统变量:在Path中,加入,你的 这些dll的路径;

用户变量:加一个ORACLE_HOME,也是这个路径;

然后,重启一下机器。就OK了。

这样的话,就不用安装oracle,就可以连接远程服务器上的oracle数据库了。