我的电脑 
xp 
sql 2000 
delphi 7  --用的是adoconnection组件。 
写了一个程序 是要连到sql 2000的。在我的电脑上没有问题。在A客户那里也没有问题。在A那里不管是连本机SQL还是本地网中的SQL都是可以的。 但是拿到了B客户那里,连不到SQL了。提示  未与信任SQL SERRVER 建立连接。。 B客户那里情况: 
xp 
sql 2000 
是在本机连接数据库的。 我觉得一定是客户机SQL 2000的设置问题,但是我又不知道是哪出了问题。 
提示,B客户还有我公司一软件,分在几台电脑上,不管是本地还是通过局域都是可以连到数据库的。 
我的连接方法: 
  con1.Close; 
  con1.ConnectionString := 
  'provider=sqloledb.1;server='+ 
  MyIniFile.ReadString('SqlServer','SqlServerName','')+';database='+ 
  MyIniFile.ReadString('SqlServer','SqlDataBaseName','')+';uid='+ 
  MyIniFile.ReadString('SqlServer','SqlUserName','')+';password='+ 
  MyIniFile.ReadString('SqlServer','SqlUserPassWord','')+';persist securyti info=false';   con1.Open;

解决方案 »

  1.   

    SQLServer更改为使用混合身份验证。
      

  2.   

    没有防火墙。windows的也关了。
      

  3.   

    你首先确认你的数据库连接是正常的(在其他电脑里用SQL客户端连接是否正常),
    再确认下端口有没有开(没有就开),
    然后你看下你是用了什么方式登陆的(混合模式的话有时候关闭了开了就好了),
    如果都正常,那试下把数据库装在别的电脑上看行不行。。
    我曾经试过一个案列,同一台电脑上开了两个虚拟系统,
    两个虚拟系统的数据库都一样的,但很奇怪的其中一个的数据库中的两个表连接不正常,
    但只要把那个虚拟系统的镜象COPY到另一台电脑上,又连接正常了..
      

  4.   

    我刚刚在我的电脑上装了一台虚拟机试了一下,确实存在大家说的情况,就是在验证模式为windows only时,会报错。 但是我一改成混合模式后,立马就行了 
    看来我客户那边不是因为验证模式的问题。。 提示一下,我曾经在客户那里改过 sqlserver的服务器端网络实用工具。
      

  5.   

    可以有个办法验证客户机是不是有问题,打开ODBC数据源,配置一个ODBC连接服务器,如果是通的说明网络没有问题。如果客户机安装了SQL Server的客户端,则打开实用工具看一下端口是不是和服务器一致,如果和服务器数据库不一致,则更改一下就可以了。如果还有问题欢迎继续讨论!