2013-07-28 1 views
2

64 비트 인 새 컴퓨터를 가져온 후 제 32 비트에 잘 연결되는 Python 스크립트를 실행할 때 다음 오류가 발생합니다 컴퓨터. Access 데이터베이스에 연결하려고합니다. Python 및 pyodbc의 64 비트 버전을 사용하고 있습니다.데이터 원본 이름의 pyodbc 오류가 발견되지 않거나 64 비트 PC에 기본 드라이버가 없습니다.

오류 메시지 : pyodbc.Error : ('IM002', [IMO] [Microsoft] [ODBC 드라이버 관리자] 데이터 원본 이름을 찾을 수없고 기본 드라이버가 지정되지 않았습니다. 나는 그것을 사용하고

연결 코드는 32 비트 PC의에 큰 작동합니다.

cnxn = pyodbc.connect(r'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=managermeta.mdb; Provider=MSDASQL;') 

답변

4

here에서 64 비트 Office 2010 드라이버를 다운로드 내가 액세스 2010 데이터베이스를 테스트 할 만 할 수 있었다, 그러나 2007 년에도 작동해야하며 연결 ​​문자열에 Provider 속성이 필요하지 않습니다.

cnxn = pyodbc.connect(r'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=managermeta.mdb;') 
+0

답변 주셔서 감사합니다. 나는 이것을 이전에 다운로드하려고 시도했다가 다시 지금 시도했다. 내 컴퓨터에 32 비트 버전의 사무실이 설치되어 있으므로 설치를 허용하지 않습니다. 아마 그게 내 문제 일세. 응? 그렇다면 내 회사에서 내 PC에 64 비트 버전의 Office를 설치하려고합니다. – wilbev

+1

@wilbev [이 SO 대답을 참조하십시오 (http://stackoverflow.com/questions/7116019/hand-install-of-64-bit-ms-access-odbc-drivers-when-32-bit-office-is- 현재) 32 및 64 비트 Office 드라이버를 나란히 설치하려고하는 경우. – Bryan

+0

팁을 기반으로 64 비트 버전의 오피스 드라이버를 성공적으로 설치할 수 있었지만 여전히 스크립트에서 동일한 오류가 발생합니다. 작업과 하드 폴더 경로를 입력하여 mdb 파일에 연결을 시도했기 때문에 여전히 내 스크립트에 연결되지 않는 이유는 분실했습니다. – wilbev