当前位置: 首页 > 图文教程 > 网络编程 > ASP > 解决使用ASP无法连接ORACLE 9i数据库的问题

ASP
利用ASP输出excel文件一例
asp中使用js的encodeURIComponent
ASP动态网站制作中使用MYSQL的分析
如何编写通用的ASP防SQL注入攻击程序
ASP脚本变量、函数、过程和条件语句
ASP内建对象Application和Session
ASP基础教程:常用的 ASP ActiveX 组件
ASP程序漏洞解析及黑客入侵防范方法
ASP访问带多个参数的存储过程
用ASP和SQL语句动态的创建Access表
ASP初学者学习ASP指令
ASP开发中有用的函数(function)集合(1)
ASP开发中有用的函数(function)集合(2)
ASP开发中有用的函数(function)集合(3)
ASP网站程序自动升级实现的方法
ASP开发中的(VBScript)类基础学习
ASP代码:防止重复多次提交表单的方法
在ASP中使用类,实现模块化
ASP基础教程之学习ASP中子程序的应用
ASP技巧:ASP中三个常用语句的使用技巧

解决使用ASP无法连接ORACLE 9i数据库的问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 146 ::
收藏到网摘: n/a

       今天,在一台WIN2K SERVER 服务器上,通过ASP安装在本机的 Oracle9i 数据库时,发现错误,根本无法连接上数据库。其错误描述如下:
  
  Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
  [Microsoft][ODBC 驱动程序 管理器] 驱动程序的 SQLAllocHandle on SQL_HANDLE_ENV 失败
  
  或
  
  Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
  由于系统错误 5 (Oracle in jxt_user),导致不能加载指定驱动程序
  
  连接方式是通过ODBC,驱动程序包括 Oracle ODBC Driver 和 Microsoft ODBC Driver for Oracle 。
  连接字串如下:
  (1)CONNECTIONSTRING ="DSN=TXLTNS;UID=user;PWD=password"
  (2)CONNECTIONSTRING ="DRIVER={Oracle in txl_user};UID=user;PWD=password;DBQ=TXLTNS;DBA=W;"
  
  结果,都是无法正常运作。经检查发现 %ORACLE_HOME% 设置是正确的,也包含到PATH中了。
  
  
  在 GOOGLE 搜索简体中文的信息,发现一个信息说法如下:
  “这个其实是由于Oracle9i装在2000的NTFS分区上产生的错误。主要是IIS的权限不足,找不到Oracle9i的文件导致的错误。”
  而且他还给出了一堆英文文摘,答题的意思是:%ORACLE_HOME%这个目录在安装的时候,是单独设置了权限的,默认是管理员组、SYSTEM组和一个名为“Authenticated Users”的组具有权限。他还说要这样:
  ------------------------------------------
  v. Click on "Authenticated Users" item in the "Name" list (on Windows XP the "Name" list is called "Group or user names").
  vi. Uncheck the "Read and Execute" box in the "Permissions" list (on Windows XP the "Permissions" list is called "Permissions for Authenticated Users"). This box will be under the "Allow" column.
  vii. Check the "Read and Execute" box. This is the box you just unchecked.
  ------------------------------------------
  
  感觉这段英文的说法有点怪,为什么要取消Authenticated Users组的“读取和执行”权限呢,不是说权限不够吗?
  
  继续在ORACLE 技术网查询相关信息,发现这个信息:
  -------------------------------------------
  The Microsoft ODBC driver for Oracle is known not to work correctly on a 9.2 Oracle client. You need to use the Oracle ODBC driver if you're using the 9.2 client.
  -------------------------------------------
  
  这样看来,这个错误的发生,与ORACLE的安装配置无关。因为之前测试过使用JAVA通过 JDBC 连接ORACLE是成功的。
  
  于是下载最新的 MDAC2.8 ,安装完后,重新启动计算机,再测试原来的ASP程序,发现已经成功连接到ORACLE数据库。
  
  前面别人说的“权限”问题,看来在这里并不适应。呵呵。
  
  附:
  MDAC2.8 的下载地址:http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=6c050fe3-c795-4b7d-b037-185d0506396c