1

当我在 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 Driver Manager] 未找到数据源名称且未指定默认驱动程序

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

4

1 回答 1

5

为避免此异常,您必须安装64 位的 MySQL ODBC 驱动程序

于 2012-07-19T03:11:44.623 回答