代码之家  ›  专栏  ›  技术社区  ›  JosephStyons

Delphi2010中的dbExpress错误

  •  1
  • JosephStyons  · 技术社区  · 16 年前

    ---------------------------
    Error
    ---------------------------
    Cannot load oci.dll library (error code 127).
    The oci.dll library may be missing from the system path
    or you may have an incompatible version of the
    library installed.
    ---------------------------
    OK   Details >>   
    ---------------------------
    

    当我将“connected”设置为“true”时会引发异常。

    在使用表单设计器和可见的TSQLConnection组件时,我也会收到此消息。

    有什么想法吗?

    function TDBExpressConnector.GetConnection(username, password, servername: string) : TSQLConnection;
    begin
      //take a username, password, and server
      //return a connected TSQLConnection
      try
        FSqlDB := TSQLConnection.Create(nil);
        with FSqlDB do begin
          Connected := False;
          DriverName := 'Oracle';
          GetDriverFunc := 'getSQLDriverORACLE';
          KeepConnection := True;
          LibraryName := 'dbxora30.dll';
          ConnectionName := 'OracleConnection';;
    
          Params.Clear;
          Params.Add('DriverName=Oracle');
          Params.Add('DataBase=' + servername);
          Params.Add('User_Name=' + username);
          Params.Add('Password=' + password);
          Params.Add('RowsetSize=20');
          Params.Add('BlobSize=-1');
          Params.Add('ErrorResourceFile=');
          Params.Add('LocaleCode=0000');
          Params.Add('Oracle TransIsolation=ReadCommited');
          Params.Add('OS Authentication=False');
          Params.Add('Multiple Transaction=False');
          Params.Add('Trim Char=False');
          Params.Add('Decimal Separator=.');
    
          LoginPrompt := False;
          Connected := True;
        end;
    
        Result := FSqlDB;
      except on e:Exception do
        raise;
      end;  //try-except
    end;
    
    2 回复  |  直到 15 年前
        1
  •  0
  •   Erwin    16 年前

    在Delphi2010中,Oracle的dbExpress驱动程序是dbxora.dll. 命名连接中的库名为dbxora30.dll。很有可能它会用正确的名字工作!

        2
  •  -2
  •   Gabe    15 年前

    My Blog

    用你的dll代替我在帖子里提到的那个。你应该在同一个目录中找到它。