TADOConnection无法在delphi中使用xe2 64位

时间:2012-07-19 03:08:25

标签: 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.

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

  

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

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

1 个答案:

答案 0 :(得分:5)

要避免此异常,您必须安装MySQL ODBC driver for 64 bits