ado连接sql server数据库,100分(100分)

  • 主题发起人 主题发起人 uuuj
  • 开始时间 开始时间
U

uuuj

Unregistered / Unconfirmed
GUEST, unregistred user!

我用ado连接sql server,方法是:
adoquery.connectionstring:='Provider=SQLOLEDB.1;
Persist Security Info=False;User ID=asdf;
Initial Catalog=OA;Data Source='+ip;

但是为什么我有时能连上有时连不上,而且好像跟机器也有关系
如何解决?怎样才算理想?
请帮帮我写出具体的步骤,我很菜的,谢谢!
 
uses Db, ADODB ;

procedure TForm1.BitBtn1Click(Sender: TObject);
var
ADOConnection:TADOConnection;
begin
ADOConnection:=TADOConnection.Create(nil);
try
ADOConnection.Connected:=False;
ADOConnection.LoginPrompt:=False;
ADOConnection.ConnectionString:='Provider=SQLOLEDB.1;Password='+password+
';Persist Security Info=True;User ID=' + UserID + ';Initial Catalog='+DataBaseName+';Data Source='+IPAdress;
try
ADOConnection.Connected:=True;
except on E:Exception do
begin
Application.MessageBox('连接数据库失败,请检查网络连接情况。','错误',MB_OK or MB_ICONWARNING);
MessageDlg(E.Message, mtWarning, [mbOK],0);
Exit;
end;
end;
Application.MessageBox('连接成功。','信息',MB_OK or MB_ICONINFORMATION);
finally
ADOConnection.Free;
end;
end;
 
如果客户端的机器中装有MSSQL SERVER的话,需要在CLIENT NETWORK UITILITY中设置一下
服务器TCP/IP,或者HOSTNAME,否则可能连不上数据库。
 
TIMEOUT设长一点
 
使用IP地址:

adoquery.connectionstring:='Provider=SQLOLEDB.1;Server='+ip+';UID=...;PWD=...';

Data Source 指得是 ODBC的数据源名称,当然不能用ip地址。

 
ADOConnection.ConnectionString:='Provider=SQLOLEDB.1;Password='+password(。。。。)+
';Persist Security Info=True;User ID=' + UserID(。。。) + ';Initial Catalog='+DataBaseName+';Data Source='+IPAdress;
 
有时能连上有时连不上,可能是timeout的值较小或者网络不好
 
不是这个原因,网络很好
但出错信息是sql server不存在或访问被拒绝???
该怎么设置sql server服务器端权限?
 
你可以在编写的时候在adoconnection的connectstring里面build一下
啊,看看可不可以连上sql服务器,如果连不上的话就是你sql server
设置的不对了,不久前刚用ado做了一个连sql数据库的作业,就是这样
做的
 
我估计是sql server服务器设置的不对
请问该如何设置呢?是不是权限或连接方式的问题?
 
我觉得,跟安装时选择的登陆方式有很大关系,不能选择操作系统认证的方式,
而应是下面的用户密码方式。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部