Asp.Net通过ODBC连接Oracle数据库

本来有个项目是通过安装Oracle client然后让asp.net引用System.Data.OracleClient来访问Oracle数据库的,但是不知道为什么老是报:ORA-12170:连接超时的错误,(客户的服务器配置是:Windows Server 2008 R2 64bit 我刚开始安装的oracle client 是32bit ,最后报什么:require oracle version 8.1以上版本什么什么的。。。没办法我只好卸载这个版本,然后在Oracle官网上下载了一个Oracle Client 64bit来安装,安装好后就没有这个问题了),tnsping,ping,telnet Ip 1521都是通的,但是就是连接不上,不过别人都能连接上,唯独我的就不行,在网上搜索好多帖子,文章都不能解决问题,在客户那里的时候,客户的网络组人员说:网络都是通的,这不是网络原因!客户的数据库组的的人员说:数据库安装是对的,这不是数据库的原因!你tmd的这是在开玩笑吗,我也是醉了,在群里问群友叫他们帮我解决下这个问题,都说是tns的问题,但是tns都是通过net manager配置的,什么空格 什么东西都不存在的事,所以不是tns的问题,然后有个群友开玩笑的对我说:恭喜你,你见鬼了!最后群里有个大神,他给我了一个dbvis_windows_8_0_10软件,貌似是通过java来连接数据库的,然后引用一下:ojdbc6.jar就可以访问了!!!这是为何,我到现在都搞不清楚,不过我的项目是asp.net所以就算连接上了,对我也没什么用,所以我必须想想其它办法 来连接Oracle,然后满世界的在网上搜索文章,看看关于用什么办法不通过安装Oracle Client来访问Oracle!!!

终于被我找到了,可以通过ODBC来连接访问Oracle,然后参考了几篇网上的文章做好了配置,运行,确实可以了,不过在这个过程中也走了不少弯路:如下

1、不需要在本地,或者服务器上设备ODBC数据源,但是你非常通过本地这样设置的话,那你在web.config下的连接字符串可以写成这样:

<add key="Oracle" value="DSN=155oracle;Uid=zhangwei;Pwd=zhangwei"/>

这样你就可以访问数据库了,但是,我说但是,为什么说我不这样设置数据源呢!你想啊,难道用户要访问你的数据库都要设置本地ODBC数据源,显然这不是正确的办法,当然这样也不错,可以做为测试用,但是不能做为生产用。那么真正在生产环境中我们的连接字符串如何写呢,如下:

<add key="Oracle" value="Driver={Microsoft ODBC for Oracle};Server=192.168.1.155/znxj;Uid=zhangwei;Pwd=zhangwei"/>

注意:上面的斜体部分,如果你部署在服务器上这个ip就不需要了。

总结:

1、在配置ODBC数据源的时候不是用户名写错,就是服务器写错,反正自己当时也不知道哪个是对的,最后能成功也是靠我自己 的经验慢慢改对的,网上有些文章也不全对,这点希望大家有所保留。

参考文章:

ODBC DSN-Less

C#/.NET连接各类主流数据库(SQL Server,MySQL,Microsoft Access,DB2,Oracle)的连接字符串整理

ODBC数据源连接Oracle数据库示例

通过 ODBC 来连接 Oracle 数据库

C#连接Oracle数据库的四种方法

时间: 2024-10-26 01:57:24

Asp.Net通过ODBC连接Oracle数据库的相关文章

在ASP中通过oo4o连接Oracle数据库的例子

oracle|数据|数据库 下面这段代码能够显示,当前用户所能够看到的所有的用户和表,有兴趣的, 可以把每个表的内容加上 <%Dim objOraSession,objOraDbDim strDbUser,strDbPwd,strDbConnCall ConnectDB()Sub ConnectDB() '连接数据库 On Error Resume Next strDbUser = "tmpUser" '连接用户名 strDbPwd = "rt45ps1w"

asp.net C连接oracle数据库并显示数据

asp教程.net c连接oracle数据库教程并显示数据 本款是是由asp.net教程 与oracle数据库连接,并且显示数据中的所有数据哦. data source=torcl;user id=myusername;password=mypassword; data source=(description=(address_list=(address=(protocol=tcp)(host=myhost)(port=myport)))(connect_data=(server=dedicat

Windows server2008 搭建ASP接口访问连接oracle数据库全过程记录

真的是太不容易了,以前的时候在window server 2003上面搭建了一套asp+oracle的接口系统,就费了好大的劲儿,其实那会迷迷瞪瞪的也不知道怎么的就弄好了,也懒得管了.OK,从昨天到今天打算把接口从测试环境部署到公网环境上去的时候就出现了各种各样的问题,这次一定得记录一下. 先来说一下这套接口系统的整体方案: 之所用选用asp是因为属于轻量级的接口系统,只需要修改好了以后复制粘贴上去接口就立即生效,而不需要像java系的接口程序要用tomcat打包.上传.部署这样的.那这个系统就

通过ASP.NET连接Oracle数据库实例教程

通过ASP.NET连接Oracle数据库实例教程 长期以来,我一直用的是 MS SQL Server / Access 数据库,通过.NET 访问MS自家的东西几乎没碰到过什么麻烦.最近项目中要用 Oracle 作为数据库,学习研究了一些 .NET 访问Oracle 的东西,发现问题倒真的不少. 1.System.Data.OracleClient 和 System.Data.OleDb 命名空间 虽然通过这两个命名空间的类都可以访问 Oracle 数据库,但和 SQL Server 类似的(S

Asp.Net连接Oracle数据库的例子

asp.net|oracle|数据|数据库 Asp.Net连接Oracle数据库的例子 刚接触asp.net,发现在 .Net Framework 1.1版中,直接就有System.Data.OracleClient类库, 用于访问Oracle数据库,不过我这里好像还是1.0 版本的,不支持该对象. 这里是一个通过oledb访问数据库的例子,与在asp中的差不多,能够访问大多数的数据库,比如access之类的. <%@ Page Language="VB" %> <%

c#连接 oracle 数据库-asp.net 连接 oracle数据库出现的问题 求大神指教 急急急!!!

问题描述 asp.net 连接 oracle数据库出现的问题 求大神指教 急急急!!! 我的开发工具是vs2015 开发语言是C# 测试连接代码的时候出现了这样的错误 本地服务器数据库是 oracle 11G 求大神指教啊!!! 感激不尽. using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.Web

asp.net 连接Oracle数据库实例代码

连接oracle数据库很简单,如下  代码如下 复制代码 connectionString="Password=czh;User ID=czh;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.168.211)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=skydream)));"   HOST:服务器IP或者服务

谁有asp.net连接oracle数据库操作类,要存储过程模式的?

问题描述 谁有asp.net连接oracle数据库操作类,要存储过程模式的? 解决方案 解决方案二:这个还没有用过,帮你up把解决方案三:我也没有用过oracle

用ASP.Net(C#)连接Oracle数据库的方法

今天看了一下asp.net连接oracle数据库的方法,得到了如下代码.这段代码打开了MyTable表,并把操作员的名字列出.字段类型是OracleString.读取的时候用的是字段编号,我不知道怎么使用字段名来读取某字段的内容.下面是代码: //首先添加两条引用usingSystem.Data.OracleClient;usingSystem.Data; //在窗体上添加一个按钮,叫Button1,双击Button1,输入以下代码privatevoidButton1_Click(objects