用ADO连接。加入ADOConnection控件。在需要连接的时候指定它的连接字符串,例如:
ADOConnection1.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=False;User ID=' + UserName + ';I' +
      'nitial Catalog=' + DBName + ';Data Source=' + CoputerName;

解决方案 »

  1.   

    const
      //系统连接数据库字符串
      ConnectionString= 'Provider=SQLOLEDB.1;' +
                        'Persist Security Info=False;' +
                        'User ID=%S;'+                  //用户名
                        'Password=%s;'+                 //密码 
                        'Initial Catalog=%S;' +         //数据库 
                        'Data Source=%S';               //服务器
    ......
          AdoConnection1.Connected:=false;
          AdoConnection1.ConnectionString:=Format(ConnectionString,[sUser,sPassword,sDataBase,sServer]);
          Adoconnection1.Connected:=true;
      

  2.   

    我不太喜欢用ADO,我用BDE,
    首先在窗体上放置TDataBase,TQuery,TButton,及五个TEdit控件
    详细命名如下:
    MyDataBase: TDataBase;
    MyQuery: TQuery;
    edtServer: TEdit;
    edtDB: TEdit;
    edtUserName: TEdit;
    edtPW: TEdit;
    edtTableName: TEdit;
    btnConnectDB: TButton;在btnConnectDB的点击事件中写如下代码:IF MyDataBase.Connected then MyDataBase.Connected := False;
    MyDataBase.DataBaseName := 'aa';
    MyDataBase.DriverName := 'MSSQL';
    MyDataBase.LoginPrompt := False;
    MyDataBase.Params.Add('DATABASE NAME= ' + edtDB.Text);
    MyDataBase.Params.Add('SERVER NAME= ' + edtServer.Text);
    MyDataBase.Params.Add('USER NAME= ' + edtUserName.Text);
    MyDataBase.Params.Add('PASSWORD= ' + edtPW.Text);
    Try
      MyDataBase.Connected := True;
    Exception
      ShowMessage('数据库连接,请联系管理员以查看你的用户名及密码是否合 法'); 
      Abort;
    end;
    With MyQuery do
    begin
      Close;
      SQL.Clear;
      SQL.Add('SELECT * FROM ' + edtTableName);
      Prepare;
      Try
        Open; 
      Exception
        ShowMessage('数据库已经连接,但表打开失败,请查看当前表是否存在');
        Abort;
      end;
      ShowMessage('数据库已经连接,表已经打开');
    end;
      

  3.   

    同意xxmmmx(踢踏)和dancemaple(枫之舞)就是在你加入ADOCONNECTION组件的时候,不要指定连接数据库字符,即ADOConnection1.ConnectionString =‘’;,然后在连接的时候动态指定ADOConnection1.ConnectionString :=‘。’根据用户名称决定连接哪个数据库。BDE太差劲,我就是从BDE转到ADO连接上的。很方便。
      

  4.   

    两种方法都可以,看你的习惯。好象现在ADO比较流行。