adoconnection问题,请教高手(50分)

  • 主题发起人 主题发起人 Caicheng
  • 开始时间 开始时间
C

Caicheng

Unregistered / Unconfirmed
GUEST, unregistred user!
adoconnection.connectstring,调出属性编辑器,在connection属性中,第一个是选择
server,我的问题是:在我的网络中有SQL服务器,但是为什么刷新时看不到,一定要用
手工输入?
(手工输入以后再test一切正常,我只是想知道为什么刷新时找不到。)
 
你的密码以及安全措施选对了?
 
我选的是NT集成安全。
我在Server框里直接输入SQL服务器名字或IP地址,再TestConnetion都正常啊,
我是说如果我不手工输入,而直接用“refresh”怎么它怎么就不能自动找到
SQL服务器的名字呢?
 
you can try sqlserver login
 
这和server无关,用sql server 的Client Network Utility注册过的server别名才会出现在列表中,
^^^^
否则只由手工输入,不过只要连接正常,照样可以用。
 
同意温柔一刀
 
:用sql server 的Client Network Utility注册过的server别名才会出现在列表中,
我之所以有这个疑问,是因为我曾经有一次用刷新出现过SQL服务器的名字,那时候我把
SQL服务器放在与客户端同一组里面,后来我放在另一个域里面,结果刷新的时候就没了,
但手工输入地址或机器名以后,可以正常联接,我现在又把它改回工作组里面,刷新的时候
还是没有,所以我奇怪。
我注册了别名,但刷新还是没有。我注册有错吗?注册别名好象没有特别的地方啊。

我用网管软件分析了一下,发现每次当我点刷新的时候,我的电脑就会去访问局域网中的DNS
服务器,没有在整个网络里面找,当然,在DNS服务器里面怎么找得到SQL。
如果我填上IP地址或名字,我的电脑就会直接访问SQL服务器。

尽管我手工输入不影响任何东西,但是我还是想搞清楚为什么现在刷新找不到了。
谢谢各位。

 
实际上那只是一个缓存,ADO根本不能自动找到sql server。
你输入server名称,成功连接之后,那里面就有了。
(有时候需要退出delphi之类的,或者多来几次/等一段时间--缓存嘛!)

>>我用网管软件分析了一下,发现每次当我点刷新的时候,我的电脑就会去访问局域网中的DNS服务器
你按刷新的时候,sql server根据缓存再搜索sql server,如果能连通,则保持这项,
否则会删除掉。因此你按刷新的时候是否能与sql server连通也有影响。
不过关键还是首先要ado缓存你的server名。

无论是否Client Network Utility注册过的都一样,这一点我前面说的不对,
注册过的只是增加了一种搜索方式而已。
 
呵呵!是这样的!agree 温柔!
那个东西得手动输入!
我用的时候从来就没有在下拉的时候出现过任何计算机的名子:()
 
谢谢各位。
 
后退
顶部