MDAC] Overview MDAC & Windows DAC MS] Windows

Windows Vista, Windows Server 2008 그리고 곧 출시될 Windows 7 에는 MDAC(Microsoft Data Access Components) 을 찾을 수 없습니다. Vista 부터는 WDAC 으로 변경되었기 때문입니다. MDAC과 Windows DAC 에 대해서 잘못 이해 하시고 질문 하시는 분이 많아서 정리해봅니다.

Microsoft Data Access Components 는 3개의 Layer 로 구성되어 있으며, Programming Interface layer, Database Access Layer, Database Layer 가 그것 입니다. [Database Layer 는 MDAC 에서 제공하고 있는 것이 아닙니다만… MDAC Architecture 에는 이것을 빼고 설명할 수 없기 때문에…]
일반적으로 자주 사용하시는 ODBC Driver, OLE DB 가 MDAC 의 Data Access Layer 에 포함됩니다.

[wikipedia 에서 가져왔습니다만… 썩 그리 좋은 그림은 아닙니다.]

MDAC 은 Application Layer(ADO, DAO, ADOX 등), Database Access Layer(ODBC Driver, OLE DB Driver) 를 제공하는 Data Access Components Stack 으로서, 개발자 또는 사용자에게 편리한 Interface 를 제공합니다. 예를 들어, OLE DB, ODBC 를 사용하기 위해서 해당 Driver 를 각각 설치하는 것이 아니라, MDAC 을 (OS에 이미 설치되어 있습니다.)통해 제공 받는 것입니다. [OLE DB 4.0 을 Download 받으실 수 없습니다. 간혹 물어보셔서…]

MDAC (Microsoft Data Access Components) : 현재 Widows DAC 6.0 (Windows Vista 에 Shipping 되어 있습니다.) version 까지 나와 있습니다.

예를 들어,  Visual FoxPro Database 를 사용하기 위해서는 ODBC Drvier 와 같은 Data Access Layer 가 필요합니다. Visual FoxPro Database 는 MDAC 2.5 에 포함되어 있습니다.  Windows XP 의 경우 MDAC 2.8 (SP1, SP2) 가 설치되어 있으므로, MDAC 2.5 에 포함되어 있는 Visual FoxPro Database ODBC를 사용할 수 없습니다. [MDAC 2.8 SP1 에는 ODBC Driver for Visual FoxPro 가 빠져 있기 때문입니다.]  이렇게, MDAC 과 ODBC 를 동일하게 생각하여, MDAC 최신 Version 에는 이전에 제공하는 ODBC Driver 가 모두 있으리라 생각하는 경우가 있으십니다.

MDAC 은 Update 되는 것이 아닙니다. 예를 들어, 2.8 은 2.5 의 내용을 모두 포함하고 있다고 생각하시면 안됩니다.

이러한 경우 Visual FoxPro ODBC Driver는 수동으로 다음 Link 에서 Download 받아 설치 하여야 합니다. (MDAC 2.8 에는 해당 ODBC Driver 가 빠져 있기 때문에…]
http://download.microsoft.com/download/vfoxodbcdriver/Install/6.1/W9XNT4/EN-US/VFPODBC.msi

Windows Vista & Windows Server 2008, Windows 7 에서는 MDAC Redistributable 을 제공하고 있지 않습니다. (Windows XP & 2003 & 2000 에서 사용하는 MDAC Redist 와는 다릅니다.) 즉, Windows DAC은 Download 하여 설치할 수 있는 것이 아니라,  Windows에 Shipping 되어 있는 형태로 제공됩니다.  

[MDAC 은 Update 형태로 설치되는 것이 아닙니다. 이는 기존의 Version 에서 새로운 Version 으로 Update 형태의 의미가 아닌 새로운 MDAC Stack 을 Install(또는 shipping) 하는 것을 의미합니다.]

Component Checker Tool을 사용하여 MDAC의 Version 을 확인 및 비교 할 수 있습니다.
http://www.microsoft.com/downloads/details.aspx?FamilyID=8f0a8df6-4a21-4b43-bf53-14332ef092c9&DisplayLang=en

MDAC 1.0 :

  • IIS 3.0, OLE DB 1.1 SDK, Visual Interdev 1.0 에 포함 되어 있습니다.
  • This version of MDAC no longer is supported.
  • ADO 1.0 / ODBC 3.0 / OLE DB  1.1 / ADC 1.0 / ODBC drivers for Access/Jet, SQL Server and Oracle databases

MDAC 1.5, 2.0 : 

  • Windows NT 4.0 SP4, Windows NT 4.0 Option Pack, Visual Studio 6.0 에 포함되어 있으며, MDAC Web Site 을 통해 Download 받을 수 있습니다.
  • These version of MDAC no longer are supported.
  • MDAC 1.5 : ADO 1.5 / ODBC 3.5 / OLE DB 1.5 / Remote Data Services 1.5
  • MDAC 2.0 : Fixed some issues.

MDAC 2.1 :

  • Windows 98 Second Edition,  SQL Server 6.5 SP5, SQL Server 7.0, Internet Explorer 5.0, Office 2000, Visual Studio 6.0 SP3 에 포함되어 있습니다.
  • This version of MDAC no longer is supported.
  • ADO 2.1 / ODBC 3.5 / OLE DB 2.1 / RDS 2.1 /
  • JRO 2.1 / Jet driver / RDO / The OLE DB provider for ODBC, SQL server and Oracle


MDAC 2.5 :

  • 2.5 RTM 은 Windows 2000 RTM, 2.5 SP1 은 Windows 2000 SP1, 2.5 SP2 는 Windows 2000 SP2 에  2.5 SP3 는 Windows 2000 SP3 에 각각 포함되어 있습니다.
  • ADO 2.5 / ODBC 3.51 / OLE DB 2.5 / RDS 2.5 / JRO 2.5 / ADO MD 2.5 / ADOX 2.5 /
  • The OLE DB provider for the ODBC Driver for SQL server, Jet 4.0(Access 2000), Oracle, OLAP Services and so on.
  • The ODC driver for Access, Excel, SQL Server, Oracle, Visual Fox Pro, dBase text files.
  • The Jet driver for Access, Excel, Microsoft Exchange, xBase, text files.

MDAC 2.6 :

  • 2.6 RTM 은 SQL Server 2000, 2.6 SP1 은 SQL Server 2000 SP1, 2.6 SP2 는 SQL Server 2000 SP2 에 각각 포함되어 있습니다.
  • Microsoft Jet / Microsoft Jet OLE DB Provider / ODBC Desktop Database Drivers

MDAC 2.7 :

  • Windows XP RTM 에 포함되어 있습니다.
  • Supporting for x64

MDAC 2.8 :

  • Windows 2003 RTM 에 포함되어 있습니다.
  • Fixed some bugs

MDAC 2.8 SP1 :

  • Windows XP SP2, SQL Server 2000 SP4 에 포함되어 있습니다.

MDAC 2.8 SP2 :

  • Windows 2003 SP1 에 포함되어 있습니다.

Windows DAC 6.0 :

  • MDAC 에서 Windows DAC으로 변경되었으며, WinDAC Version은 Windows Version 을 따릅니다. 또한, Redistributable Package를 제공하고 있지 않습니다.
  • Windows Vista, Windows Server 2008 에 포함되어 있습니다.
  • [아직 내부 자료를 찾지 못했습니다만, Windows 2008 Server 와 Windows Vista 에서 제공하는 WinDAC 의 내용은 다른 듯 합니다.] 

Windows DAC 7.0 :

  • Windows 7 에 포함되어 있습니다.

덧글

  • 허성주 2009/11/25 22:49 # 삭제 답글

    office 97에서 만든 (.mdb)가 windows7 환경에서 인식하지 못합니다 비주얼베이직 프로그램을 실행하면 mdb를 인식하지 못합니다.
    원인이 뭔지 도무지 알수없어서...도와주세요
  • kikiwaka 2010/01/08 13:34 # 답글

    너무 늦게 봤네요.
    mdb file 이 인식 못하는 것이 호환성 issue 때문에 발생하는 것은 아닐 겁니다.
    정확한 오류 메시지라든가 증상을 알아야 하겠지만...
    권한 관련 오류 일 수도 있을 것 같습니다.

    아래와 같이 진행하던 Case 도 있었습니다만...
    http://superuser.com/questions/41877/microsoft-access-there-was-a-problem-sending-the-command-to-the-program
  • 강인석 2010/06/21 10:06 # 삭제 답글

    허성주님처럼 마찬가지 상황이 벌어져서 문의 드립니다.

    office 97 에서 만든 mdb 이구요 windows 7 환경에서 실행하면 인식할 수 없는 데이터베이스 개체라는 오류메시지와 함께 비정상 종료됩니다.

    vista에서는 정상적으로 작동하는데 windows 7 에서만 그렇구요

    참고로 mdb 파일을 실행시켜 보면 열리지도 않는 상황입니다. 비스타에서도 마찬가지긴 하지만 실행은 정상적으로 됩니다.

    어떻게 알아봐야 할까요 ? ㅡㅜ;;
댓글 입력 영역