메뉴 건너뛰기

Dev tips

ASP 80004005 : Excel 8.0(xls) OLEDB 오류

taknim 2017.10.13 14:14 조회 수 : 26

갑자기 윈도우 2012 ASP에서 xls파일(excel 98-2003)을 읽어서 처리할때 아래와 같은 오류가 발생해서 아래 방법으로 해결했다.

80004005|Unexpected_error_from_external_database_driver_(1)

아마도 윈도우 업데이트가 진행되면서 Microsoft.Jet.OLEDB.4.0를 더이상 지원하지 않는듯 하다.

  1. "Microsoft Access Database Engine 2010 재배포 가능 패키지" 설치 확인 (32비트로 설치함.)
    https://www.microsoft.com/ko-kr/download/details.aspx?id=13255
  2. 연결문자열이 Microsoft.Jet.OLEDB.4.0을 Microsoft.ACE.OLEDB.12.0로 바꿔줌.
    Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myOldExcelFile.xls;Extended Properties="Excel 8.0;HDR=YES";
  3. IIS에서 Application pool설정을 변경
    1. Managed Pipeline Mode : Classic
    2. Enable 32-Bit Applications: True

 

참고 사이트

Microsoft : https://www.microsoft.com/ko-kr/download/details.aspx?id=13255

연결문자열 구성 : https://www.connectionstrings.com/excel-97/

IIS 설정 : https://stackoverflow.com/questions/21719422/getting-error-800a0e7a-provider-cannot-be-found-it-may-not-be-properly-install