自己的电脑,XP系统,装了SQLSERVER 2008,默认的实例。电脑ip是192.168.1.23
SqlConnection连接语句如下
SQL_Conn = new SqlConnection("server=.;database=gsxt;user id=sa;pwd=aaa");
SQL_Conn.Open();这样是可以的, server=localhost 也是可以的,
但是用 server=192.168.1.23 则出错。如果用(@"server=192.168.1.23;database=gsxt;user id=sa;pwd=aaa"); 也出错。为什么呢?

解决方案 »

  1.   

    .会指向你安装的默认数据库实例.所以可以.用IP的同时需要指定实例名.
    IP\实例名
      

  2.   

    LS 的朋友,我另一个程序,只写了个IP,没有写实例名,语句跟这个一摸一样,是可以连的。所以不是实例名的问题。因为都是默认实例。我猜会不会是其他的原因?
      

  3.   

    出错是出什么错呢?  
    192.168.1.23 有没开放sql远程连接呢  端口对不对呢
    如果是连自己127.0.0.1行不行呢
      

  4.   

    刚才说错了。是前几天的一个一摸一样的程序可以用IP连。今天把这个程序的类考出来,却连不了。(那个程序已经咔嚓了)我用 .  localhost  计算机名称 都试验过了,都可以连。
    用IP就是不可以。127.0.0.1 也不行。以前那个可以连的程序,用
    (@"server=192.168.1.23;database=gsxt;user id=sa;pwd=aaa"); 出错
    把前面的 @ 去掉,就可以连了。想不明白。
      

  5.   

    如果你的电脑 只装有一个DB  用IP 是肯定可以的 
    你说的报错 不知道报什么错?@是转义字符  比如 你的sql实例是 aa\Sql2005 的时候就加上@不知道你是不是2005 看看服务开启没有?
      

  6.   

    关了防火墙试试,如果可以,则到防火墙中将SQL SERVER用的通信端口加到例外中。
      

  7.   

    是2008. SQL服务是开的。用 。,计算机名,localhost 可以连,说明数据库没问题。用IP报错,错误是: 在与SQLSERVER连接是出现与网络相关的或特定于实例的错误。就是说用IP连的话,c#找不到SQLSERVER
      

  8.   


    (@"server=192.168.1.23\pc_230412;database=gsxt;user id=sa;pwd=aaa"); 
    或者去掉@ 都出错。(pc_230412 是计算机名)
    也就是说,里面有IP地址的,就会报错。
      

  9.   

    server=127.0.0.1;database=gsxt;user id=sa;pwd=aaa
      

  10.   

    sql需要允许远程连接的  你设置没有
      

  11.   

    配置工具->>SQLServer外围应用配置器->>
    服务和外围连接的应用配置器->>点击"远程连接"->>本地连接和远程连接->>
    同时使用TCP/IP和named Pipes->>点"确定"->>重启SQLserver服务
      

  12.   

    你得确保对方SQL服务器的TCP/IP协议启用
    可以用查询分析器连接那个ip地址试试