ADODB.Connection (0x800A0E7A)未找到提供程序。该程序可能未正

WBOY
풀어 주다: 2016-06-07 17:53:22
원래의
3134명이 탐색했습니다.

ADODB 是 Active Data Objects Data Base 的简称,它是一种 PHP 存取数据库的中间函式组件。 虽然 PHP 是建构 Web 系统强有力的工具,但是 PHP 存取数据库的功能,一直未能标准化,每一种数据库,都使用另一种不同且不兼容的应用程序接口(API)。为了填补这个

  ADODB 是 Active Data Objects Data Base 的简称,它是一种 PHP 存取的中间函式组件。

  虽然 PHP 是建构 Web 系统强有力的工具,但是 PHP 存取数据库的功能,一直未能标准化,每一种数据库,都使用另一种不同且不兼容的应用程序接口(API)。为了填补这个缺憾,因此才有 ADODB 的出现。一旦存取数据库的接口予以标准化,就能隐藏各种数据库的差异,若欲转换至其它不同的数据库,将变得十分容易。

  目前 ADODB最新版本是V4.62,支持的数据库种类非常地多,例如:MySQL, PostgreSQL, Interbase, Informix, Oracle, MS SQL 7, Foxpro, Access, ADO, Sybase, DB2 以及一般的 ODBC (其中 PostgreSQL、Informix、Sybase 的driver 是由自由软件社群发展之后贡献出来的)。

  使用 ADODB 最大的优点之一是:不管后端数据库如何,存取数据库的方式都是一致的,开发设计人员不必为了某一套数据库,而必须再学习另一套不同的存取方法,这大大减轻开发人员的知识负担,过去的知识往后仍可继续使用,转移数据库平台时,程序代码也不必做太大的更动。

  其实 ADODB 这样的发展理念,并不是首创的,DBI 比 ADODB 出现得更早,它提供 Perl 存取数据库时,使用一致的 API 呼叫接口。相信用过 Perl + DBI 的朋友,再来用 ADODB 时,会有一种似曾相识的感觉。

    笔者ASP运行环境:操作系统为Windows XP SP2,IIS的版本为默认的5.1,数据库为SQL Server 2005(MDAC版本为2.8)

    出现此错误的原因是,Microsoft 数据访问组件 (MDAC) 所需的动态链接库 (DLL) 尚未注册。 
    ADODB.Connection (0x800A0E7A)的解决方法:单击开始,单击运行,然后键入 regsvr32 "c:\Program Files\Common Files\System\Ole DB\sqloledb.dll"
收到 DLL 成功注册的确认后,单击确定。 

查看更多精彩图片    但在后来跟其他同学交流的过程中,发现有的人尽管采用了此方法,ADODB.Connection (0x800A0E7A)的问题依然没有解决,经过一番调试,发现如果用在本机能够运行的ASP代码在对方机子上运行时,不会出现ADODB.Connection (0x800A0E7A)这个错误,很顺利,数据库连接上了,而且数据也写入了。将对方的代码拷贝到本机上运行时本机ADODB.Connection (0x800A0E7A)这个错误依然存在。仔细检查发现同学的代码存在错误。所以说,代码中有错误也会引起ADODB.Connection (0x800A0E7A)错误。

    下面附上一段测试代码,希望能对ADODB.Connection (0x800A0E7A)错误仍然存在的同仁们有所帮助。

    1.建立测试数据库

   查看更多精彩图片
    2.将下列代码拷贝到记事本,命名为test.asp,放到主目录下(注意其中的User ID和Password替换成你自己的用户名和密码)


 


  留言板
 
  '如果有接受到提交数据
 If Request.Form.Count>0 Then
  '定义数据库连接对象和数据记录集
  Dim objDB,strSQL,strConnString
  set objDB=Server.CreateObject("ADODB.Connection")
  '数据库连接字符串
  strConnString   =   "Provider = Sqloledb; User ID = sa; Password = sapassword; Initial Catalog = Test; Data Source = 127.0.0.1;"
  '连接数据库
  objDB.open strConnString
  '接收提交的各项数据
  Dim UserName,Contact,Detail
  UserName=Request.Form("UserName")
  Contact=Request.Form("Contact")
  Detail=Request.Form("Detail")
  '写SQL字符串,插入数据表
  strSQL="Insert Test(UserName,Contact,Detail)Values('"& UserName &"','"& Contact &"','"& Detail &"')"
  '执行SQL字符串
  objDB.Execute(strSQL)
  set objDB=nothing
 End If
 %>
 
  

   
    
     
     
    
    
     
     
    
    
     
     
    
    
     
    
   
留言人
联系方式
留言内容

      
      
     

  

 

    3.在地址栏输入127.0.0.1/test.asp,出现下面的界面

查看更多精彩图片

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!