var FPassWord,FUserName,FDataBaseName,FServerName:string;
Const
    ConnectionStr='Provider=SQLOLEDB.1;Password="%s";Persist Security Info=False;User ID=%s;'+
                       'Initial Catalog=%s;Data Source=%s';begin
  FPassWord := EPass.Text;
  FUserName := EUser.Text;
  FDataBaseName := 'master';
  FServerName := ESname.Text;
  ADOConn.Close;
  ADOConn.Connected := false;
  ADOConn.ConnectionString := Format(ConnectionStr,[FPassWord,FUserName,FDataBaseName,FServerName]);  Try
      ADOConn.Open;
      Application.MessageBox('连接数据库成功!','提示',MB_OK+MB_ICONInformation);
      BSave.Enabled := true;
  Except
      Application.MessageBox('连接数据库失败!请重新建立数据连接!','提示',MB_OK+MB_ICONERROR);
      BSave.Enabled := false;
  End;
end;

解决方案 »

  1.   

    ConnectionStr='Provider=SQLOLEDB.1;Password="%s";Persist Security Info=False;User ID=%s;'+
                           'Initial Catalog=%s;Data Source=%s'这里错了Password="%s"; 应该是password=%s
      

  2.   

    樓主,你的服務網絡是否爲域?
    如果是的話,看看你的客戶是否加入了域,因爲我實驗發現,客戶沒加入域時會有那種情況:解決方法有兩種:
    1\客戶加入域
    2\在執行程序前,在瀏覽器地址欄裏輸入你的服務器IP地址: \\192.168.0.100 (假設你的server Ip is that),此時系統要你輸入用戶名和口令,登錄後再運行你的程序
      

  3.   

    代码这句:Password="%s";有问题,然后就是装一下客户端,试试能连到服务器吗?
      

  4.   

    windows2000系统,
    在執行程序前,在瀏覽器地址欄裏輸入你的服務器IP地址: \\192.168.0.100 (假設你的server Ip is that),此時系統要你輸入用戶名和口令,登錄後再運行你的程序
    那太麻烦了!
    客户机加入同一工作组,也出错,提示“连接数据库失败!请重新建立数据连接!”
    98,xp操作很方便,有什么办法让windows2000客户端软件操作起来也很方便吗?
    up有分,谢谢~
      

  5.   

    语句要这样写:
    Provider=SQLOLEDB.1;Password=meng;Persist Security Info=True;User ID=sa;Initial Catalog=tzky;Data Source=duoyuan\base
      

  6.   

    最好制作以下安装程序
    还有 再delphi中双银号没有任何特殊的意义,所有的字符串必须用单引号
      

  7.   

    大家应该也遇到过该问题吧?请问是如何解决的?
    目前两种方法:
    1\客戶加入域
    2\在執行程序前,在瀏覽器地址欄裏輸入你的服務器IP地址: \\192.168.0.100 (假設你的server Ip is that),此時系統要你輸入用戶名和口令,登錄後再運行你的程序
    第二种操作起来非常烦琐。第一种,windows 2000 professional好像不可以设置域
      

  8.   

    是不是只有adavanced server才能设为域控制器?server版和professional版都不行?
      

  9.   

    看来没有别的好办法了。如果客户端有windows 2000,看来服务器端只能安装xp或者server了。