2012-07-19 2 views
1

32 비트 델파이 애플리케이션에서이 코드를 실행하면 MySql 연결이 성공적으로 완료됩니다.TADOConnection이 delphi xe2에서 작동하지 않습니다. 64 비트

{$APPTYPE CONSOLE} 

{$R *.res} 

uses 
    AdoDb, 
    ActiveX, 
    SysUtils; 

Var 
    LConn : TADOConnection; 
begin 
    try 
    CoInitialize(nil); 
    try 
     LConn:=TADOConnection.Create(nil); 
     try 
     LConn.ConnectionString:='Driver={MySQL ODBC 5.1 Driver};Server=127.0.0.1;Database=mysql;User=*****; Password=*****;Option=3'; 
     LConn.Connected:=True; 
     Writeln('Connected'); 
     finally 
     LConn.Free; 
     end; 
    finally 
     CoUninitialize; 
    end; 
    except 
    on E: Exception do 
     Writeln(E.ClassName, ': ', E.Message); 
    end; 
    Readln; 
end. 

그러나 동일한 코드 코드는이 예외와 함께 실패

EOleException : [마이크로 소프트] [ODBC 드라이버 관리자] 데이터 원본 이름을 찾을 수 없습니다 및 기본 드라이버는 경우

을 지정하지 이 코드는 64 비트 애플리케이션으로 컴파일됩니다. 문제는 같은 코드가 64 비트 애플리케이션에서 실패하는 이유는 무엇입니까?

답변

5

이 예외가 발생하지 않게하려면 MySQL ODBC driver for 64 bits을 설치해야합니다.

+2

+1. 나는 코멘트 (나는 그것을 곧 삭제할 것이다)에서 말했다. 그러나 링크를 가지지 않고 있었다. 그래서 나는 대답을 게시하지 않았다. :-) –

관련 문제