各位大大,小弟是Delphi新手,望赐教:
小弟的Access数据库已经建立好,并且进行了加密,现在要连接到BDE的平台上时,
弹出对话框要求输入用户名和密码,小弟输入的用户名是‘管理员',密码为系统设置的密码,可是这样连接系统报错,请问是什么原因阿?望大大指点。

解决方案 »

  1.   

    BDE好象只支持到Access97,不知道你什么情况
    一般Access采用ADO连接。
      

  2.   

    var
      ADOCon: TADOConnection;
      ADOQry: TADOQuery;
      TBList: TStrings;  //存储Access数据库中的表名
      i: Integer;
    begin
      try
        TBList := TStringList.Create;
        ADOCon := TADOConnection.Create(Application);
        ADOQry := TADOQuery.Create(Application);
        ADOQry.Connection := ADOCon;    with ADOCon do
        begin
          Connected := False;
          ConnectionString := Format('Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=%s;User ID=%s;Data Source=%s',[PSD,UserName,FileName]);
          try
            Connected;
          except
            Result := -1;
            Exit;
          end;
        end;    //判断数据库中是否已存在表
        ADOCon.GetTableNames(TBList,True);
        for i := TBList.Count - 1 downto 0 do
        begin
          if TBList.Strings[i] = TableName then
          begin
            Result := -2;
            Exit;
          end;
        end;    with ADOQry do
        begin
          Close;
          SQL.Clear;
          SQL.Add(CreateSentence);
          try
            ExecSQL;
          except
            Result := -3;
            Exit;
          end;
        end;    Result := 0;
      finally
        FreeAndNil(TBList);
        FreeAndNil(ADOQry);
        FreeAndNil(ADOCon);
      end;
    end;
      

  3.   

    直接使用ado连接好了,这样方便,而且制作安装程序的时候不用考虑bde的配置