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;
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;
'Initial Catalog=%s;Data Source=%s'这里错了Password="%s"; 应该是password=%s
如果是的話,看看你的客戶是否加入了域,因爲我實驗發現,客戶沒加入域時會有那種情況:解決方法有兩種:
1\客戶加入域
2\在執行程序前,在瀏覽器地址欄裏輸入你的服務器IP地址: \\192.168.0.100 (假設你的server Ip is that),此時系統要你輸入用戶名和口令,登錄後再運行你的程序
在執行程序前,在瀏覽器地址欄裏輸入你的服務器IP地址: \\192.168.0.100 (假設你的server Ip is that),此時系統要你輸入用戶名和口令,登錄後再運行你的程序
那太麻烦了!
客户机加入同一工作组,也出错,提示“连接数据库失败!请重新建立数据连接!”
98,xp操作很方便,有什么办法让windows2000客户端软件操作起来也很方便吗?
up有分,谢谢~
Provider=SQLOLEDB.1;Password=meng;Persist Security Info=True;User ID=sa;Initial Catalog=tzky;Data Source=duoyuan\base
还有 再delphi中双银号没有任何特殊的意义,所有的字符串必须用单引号
目前两种方法:
1\客戶加入域
2\在執行程序前,在瀏覽器地址欄裏輸入你的服務器IP地址: \\192.168.0.100 (假設你的server Ip is that),此時系統要你輸入用戶名和口令,登錄後再運行你的程序
第二种操作起来非常烦琐。第一种,windows 2000 professional好像不可以设置域