2009-11-28 3 views
1

2003 년부터 고객에게 액세스 데이터베이스 파일 (.mdb)이있는 asp 3.0으로 작성된 간단한 웹 사이트가 실행됩니다. 최근에이 고객은 Windows 2003 서버 64 비트와 함께 제공되는 새로운 서버를 구입했으며 웹 사이트는 더 이상 작동하지 않으며 다음 메시지를 표시합니다.Access 데이터베이스가있는 64 비트 환경에서 실행되는 ASP

ADODB.Connection error '800a0e7a' 공급자를 찾을 수 없습니다. 제대로 설치되지 않았을 수 있습니다.

물론 나는 이미 웹 연구를했고 mdb 파일 (액세스 데이터베이스)을 사용하는 64 비트 환경에서 문제가되는 것으로 나타났습니다. 나는 무엇을 해야할지 모른다. 데이터베이스와 연결하기위한 코드 :

"공급자 = Microsoft.Jet.OLEDB.4.0; 데이터 원본 = C : \ dados \ politics \ consulta \ camara.mdb; MODE = 읽기, Jet OLEDB : 데이터베이스 암호 = 1234"

P. 32 비트 환경에서 모든 것이 정상적으로 작동합니다. 여기에 정말 도움이 필요해. 감사.

답변

1

IIS를 32 비트 모드로 실행하도록 설정 했습니까? 아마도 config change suggested by Microsoft을 만들어야 할 것입니다.

+0

내가 실행하도록 IIS 구성 32 비트 모드에서,하지만 지금은 사용할 수없는 서비스 메시지를 얻을, 그래서 64 비트 모드로 롤백했다. –

0

나는 Access 2010이 당신에게 유용 할 지 모르지만, 64 비트를 언급하고 있으므로 확인해 볼 가치가 있습니다.

0

이전에이 문제를 발견했습니다. 대부분의 Office 설치가 64 비트 컴퓨터에서도 32 비트이기 때문에 발생합니다. 64 비트 시스템에 32 비트 Office를 설치 한 경우이 문제를 해결할 수 있습니다. Access database driver from Microsoft을 설치할 수 있습니다. 64 비트 버전을 다운로드하여 설치해야합니다. 설치하려고하면 명령 프롬프트 (cmd.exe)를 통해 설치하고/passive 플래그를 추가해야합니다.

cmd.exe c:\locationofdownloadedfile\AccessDatabaseEngine_x64.exe /passive 

(관리자 (적절한 경우) cmd.exe를 실행하는 것을 잊지 마세요)

그런 다음 ASP 코드에 다음과 같은 연결 문자열을 사용할 수 있습니다

Set Con = Server.CreateObject("ADODB.Connection") 
Con.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\pathtoaccessdatabase\accessdatabase.mdb;Persist Security Info=False;" 
관련 문제