TADOConnection无法在delphi中使用xe2 64位

Sal*_*dor 1 mysql delphi ado delphi-xe2

当我在32位delphi应用程序中运行此代码时,成功建立了与MySql的连接.

{$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.
Run Code Online (Sandbox Code Playgroud)

但是相同的代码代码因此异常而失败

EOleException:[Microsoft] [ODBC驱动程序管理器]未找到数据源名称且未指定默认驱动程序

如果代码编译为64位应用程序.问题是为什么64位应用程序中相同的代码失败?

RRU*_*RUZ 5

要避免此异常,必须安装64位MySQL ODBC驱动程序.

  • +1.我在评论中说过(我很快就会删除它),但没有链接,所以我没有发表回答.:-) (2认同)