如题。
比如,固定IP地址为192.1.1.108(在局域网的IP)的计算机上安装有SQL SERVER,实例名为默认。
现在想用VB开发个程序,可以访问到该台计算机上的SQL SERVER。需要如何设置服务器和客户端呢?
服务器经过该设置后,面临的安全问题是什么呢?谢谢!

解决方案 »

  1.   

    dim conn as new adodb.connection 
    With conn
        if .State = adStateOpen Then .Close
        .ConnectionString = "driver=SQL Server;server=计算机名或IP地址;uid=sa;pwd=sa的密码;database=数据库名"
        .CommandTimeout = 0
        .Open
    End With
      

  2.   

    服务器端:
    如果是SQL2000,打SP4补丁
    登录方式设置为混合登录
    ADO控件 右键属性……然后按向导来设置就OK了
      

  3.   

    如果用ADO控件的连接字符串是这样的,Provider=SQLOLEDB.1;Persist Security Info=False;User ID=User;Initial Catalog=数据库名称;Data Source=192.1.1.108
    不需要提供访问数据库的密码,只要知道IP、用户名、数据库名称就可以访问。是不是很不安全啊?回复Leftie :
    计算机IP地址,是不是用192.1.1.108就行了呢?我在SQL Server中已设置好了允许TCP/IP访问,但访问用上面ADO控件来连接是总出错,提示:server不存在或者没有启动是什么原因呢?
      

  4.   

    有谁用过telnet命令呢?
    比如我的计算机IP为192.1.1.108,SQL SERVER的TCP/IP端口号为1039,我用如下一命令怎么连接不上呢?
    我用telnet 192.1.1.108 1039命令,
    连接时显示:无法打开到主机的连接 在端口 1039 : 连接失败
      

  5.   

    在服务端运行Netstat -an
    看1039端口是否处于监听状态
      

  6.   

    用了Netstat -an
    Stat为 LISTENING,即是已在监听了吧?
      

  7.   

    返回为:
    Foreign Address        State
    0.0.0.0:0              LISTENING
    ...
      

  8.   

    哦,那是连接串的问题
    Data   Source=192.1.1.108,1039 
      

  9.   

    我将端口号更改为1433,还是不行的。我现在有些怀疑,SQL SERVER2000在我们公司局域网内的IP地址为192.1.1.108,
    如果在其他公司的局域网内也有一台安装了SQL SERVER2000的计算机的IP地址也为192.1.1.108,那怎么保证能访问到我的数据服务器呢,新手啊,请高手指教
      

  10.   

    同一段局域网里IP地址怎么可能重复?首先先确认SQLServer已启动,其次保证连接正常,端口没问题,最后就是代码没写错你可以先通过ODBC连接数据库(系统自带的那个工具),看是不是可以连通,如果那个可以连通,那么只要确保代码没错就OK了至于安全问题,这个好像应该交给SQLServer自己来管理吧我也只会这些,希望有用。。吧
      

  11.   

    回复DaiLM :我说的远程服务器是指SQL Server是在公网上,即SQL Server与客户端不是在同一个局域网内,客户端通过internet来访问远程的SQL Server服务器。
      

  12.   

    公网局域网都一样 不过重要的是IP,如果服务器在公网上必须有一个公网IP,就是说如果服务器在内网中通过路由器连接公网的话那路由器里必须做个映射 就是将公网IP映射到服务器的那个局域网IP上 这样客户端才可以通过这个公网IP访问到局域网中的SQL服务器