我用Tquery编的一个数据库程序,其中数据库使用的SQL SERVER 2000,但是程序运行时要输入SQL SERVER的用户名和密码,有时候不出现登陆界面,而是提示登陆错误。请教各位高手,怎样才能在程序中设置好用户名和密码,让程序自动登录?

解决方案 »

  1.   

    你与SQL SERVER 2000的连接方式是什么?
      

  2.   

    用TDataBase控件,loginprompt设为false,params内加入username和password
      

  3.   

    {
    功能:连接数据库
    入口参数:用UserName,Password连接数据库aDataBase.
    返回结果:成功返回true,失败返回False.
    }
    function connect_database(UserName, Password: string; aDataBase: TDataBase): boolean;
    begin
      aDatabase.Params.Values['User Name']:= UserName;
      aDatabase.Params.Values['Password']:= Password;
      try
        aDatabase.Open;
        Result:= true;
      except
        Result:= false;
      end;
    end;
    //注意:Database1.LoginPrompt:= False;
    //这是基于bde的所有程序通用的函数。
      

  4.   

    database.loginprompt := false;
    database.params.clear;
    database.params.add('SERVER NAME='+yourServerName);
    database.params.add('DATABASE NAME='+databaseName);
    database.params.add('USER NAME='+UserName);
    database.params.add('PASSWORD='+password);
    database.connected := true;
    ...
    注:yourServerName,databaseName,UserName,password是你需要加进入的参数值.
      

  5.   

    添加一个database控件,把loginprompt属性设为false,
    其实使用ADO好一点
      

  6.   

    双击TDataBase,设置databasename(任意设),选择DriveName为MSSQL,点击Defaults按钮,设置Server Name为你的服务器名,Database Name为你的数据库名,User Name 为sa,(如果数据库有其他登录用户也可设User Name=youusername,password=username),其余项全部去掉。将Login prompt复选去掉即可