我想用VB做一个网上投票系统,要求在客户的计算机里只安装一个投票的VB界面,
然后从服务器里调用一个SQL数据库,如何实现这一个问题??conn.ConnectionString = "driver=SQL Server;server=.;uid=sa;pwd=;database=kk"
这是连接我这一台计算机!要连接别的服务器是不是只要将server=.;这一句加上一个服务器的IP地址??谢过!!

解决方案 »

  1.   

    语句是没错,理论也没错,想法也是对的。但是多余说几句。你
    最后能不能连接到是很难说,还要更具你的网络情况及需求来判
    断,因为更具需求有可能存在网络问题,如果你的是在局域网中
    因该没问题,但如果在Internet中就要看你的网络了。比如你的
    是子网,肯定不行,如果是铁通的ADSL也有可能不行,所以要看
    你的网络具体能不能作服务,最好就是叫别人在网吧访问你的
    IIS来看看,如果可以就没问题了。
      

  2.   

    楼主猜对了
    我有个连接字符串,看起来像这样:Driver={SQL Server};Server=192.168.200.209;UID=link;PWD=123;DataBase=NetDB;ConnectionTimeout=999这是用在企业内部网的,不存在访问上的问题,从一个城市访问另一个城市也没问题.
    如果在互联网上,可能会遇到"人类"大虾所说的问题.
    以我的经验通常访问不了,因为网络路径中有太多的防火墙存在:(
      

  3.   

    谢谢各位!!
    但这问题也应该要有个解决的办法??
    应该如何解决呢??
    假设我的服务器是192.168.200.200
    conn.ConnectionString = "driver=SQLServer;server=192.168.200.200;uid=sa;
                             pwd=;database=kk"
    这样能连到吗??
    学习ing````谢谢各位帮忙````
      

  4.   

    受網絡的各種因素影響﹐如果是在局域網內是沒問題﹐但是在internet上很難
     
      

  5.   

    Sql server支持远程连接,设置好ip,用户和密码,应该就可以连接上了
    当然需要注意防火墙等开放了对应的端口
      

  6.   

    晕了```大虾们``不行了```我试过了``
    就是连接不到```
    With conn
        If .State = adStateOpen Then .Close
        .ConnectionString = "driver=SQL Server;server=218.17.209.23;uid=sa;pwd=;database=Kao"
        .CommandTimeout = 300
        .Open
    End With这样的语句有错吗?如果打218.17.208.23换了自己的IP就行!
    我已经叫我的朋友加载了数据库!就是连不上!请问还要设其它的什么吗??
    急急ing ```
      

  7.   

    我告诉你怎么样能连上:你要建设一个VPN的网络,也就是说得通信部门开通,费用很高
    这样就能连上,你得查一查关于VPN的资料,一般的程序,软件是没有必要花这么大的成本的
      

  8.   

    我想你可以试试用SQL的查询分析器先连一下试,如果查询分析器可以过去,而你的程序过不去,那肯定是程序问题,如果查询分析器也过不去,那就是端口被关了.可以看看终端机有没有装防火墙,终端机的路由有没有防火墙,最容易被忽略的就是XP自带的防火墙.如果有,看看把它关掉再测试
      

  9.   

    随便说几句。在局域网内应该可以的,但在互联网上就不行啦,如果 楼主的是IP是私有IP 那么再论上也行不通啦,。
      

  10.   

    同意  flyer79(轻水溪) 
    建议楼主先用查询分析器连一次看看
    如果能连上,则你的程序也不会有问题
      

  11.   

    哈哈,我给三点建议
    1、用sql server连接sql server然后你访问本地的那个连接就可以了。
    2、用com+里连接。也就是所谓的中间层。写个中间层控件。
    3、用vpn,windows2000本身就可以配置出来的(管理工具里的“路由和远程访问”来配置数据库的服务器的VPN),我试出来过。我现在用的com+。随便说一下,用vb本身好像是做不到。至少我是没有做到。
      

  12.   

    加上端口号
    别喜欢default的1433
      

  13.   

    用VB做这种远程连接是很困难的,我原来给一家企业做过,用VPN也经常连不上,尤其是刮风下雨的时候,而且还找不出问题,弄得我们和网通的人都很头疼,这还仅仅是在本市的情况。现在再做远程连接我们都要求有固定IP。
      

  14.   

    不知道是VPN烂还是网通烂,呵呵...
    我这里用的是DDN, 别的城市有用DDN 的 FR的, 也有少数还在用.25, SQL远程连接 pcAnywhere远程控制什么的都不在话下.
    看来"虚"专网果然有点虚 :-D
      

  15.   

    一般的公司都是采用ADSL拨号上网的,所以外部通过INTER访问时就得先看看ADSL的客户IP地址,然后在外部输入这个IP,还有一点很重要,要在路由器中设置好1433端口转接到你的SQL SERVER的电脑
      

  16.   

    Begin2008(重头再来) 
    -------------------
    三个角了?  好快哦!楼主地问题"192.168.200.209"这种么肯定是子网,远程直连不行,建议用上IIS,也就是B/S结构,这样就不怕了!
      

  17.   

    老大,如果是能过Internet连接的话就有问题了,如果是局域的请看:
    '通用数据库连接
    Public Function CommonConn() As ADODB.Connection
        On Error GoTo handler
        Dim cn As ADODB.Connection
        Set cn = New ADODB.Connection
        cn.ConnectionString = " Provider=SQLOLEDB.1; " _
                              & " Password=xn; " _
                              & " Persist Security Info=True; " _
                              & " User ID=xn; " _
                              & " Initial Catalog=Hub; " _
                              & " Data Source=192.168.0.9"
        cn.Open
        Set CommonConn = cn
        
        Set cn = Nothing
        Exit Function
    handler:
        MsgBox "数据连接时出现错误!", vbOKOnly + vbInformation
        
    End Function
      

  18.   

    To dqhuaying(不再留恋):
       你不是在嘲笑我吧,我熬了N年才3个角呢.
      

  19.   

    楼主地问题"192.168.200.209"这种么肯定是子网,远程直连不行,建议用上IIS,也就是B/S结构,这样就不怕了!
    ========================================
    To dqhuaying(不再留恋):
    1. "肯定是子网"的论断是错的! "保留地址"与"子网"是不同的概念.
    2. 什么叫"远程直连"? 有没有与此相对应的"远程间连"的概念? 如果是说"远程连接不行"也不对.
    3. B/S结构是可行的
      

  20.   

    ------------------------------------------------------------
    ------------------------------------------------------------
    ------------------------------------------------------------
    conn.ConnectionString = "driver=SQL Server;server=192.168.1.27;uid=;pwd=;database=kk"
    这是在局域网里连接也不行阿.......
    如果把服务器的SQL连到客户的SQL,这样运行就行,不知为什么?
    我想在服务器端装了SQL,在客户端就不用装SQL!这样怎么能连接到这个数据库呢?
    各位帮帮忙
      

  21.   

    为什么要安装一个客户端啊,你用ASP、JSP、PHP之类的不就完了嘛,只要有浏览器就OK了。
    如果你熟悉VB,还是用ASP好,很简单的。别动不动就要在别人的机器上安装东西,这种想法不好。
      

  22.   

    客户端是2000或者2000以下吧,把mdac装一下看看,最少跟你的开发环境同一个版本,好像2.8的环境下开发的在2000上就不能直接用了,xp可以
      

  23.   

    conn.ConnectionString = "driver=SQL Server;server=192.168.1.27;uid=;pwd=;database=kk"
    这是在局域网里连接也不行阿.......
    如果把服务器的SQL连到客户的SQL,这样运行就行,不知为什么?
    我想在服务器端装了SQL,在客户端就不用装SQL!这样怎么能连接到这个数据库呢?
    各位帮帮忙
    -----------------------------------------------------------------------------------------
    uid不能为空,默认是sa
      

  24.   

    你这样直连SQL不安全的.也很不实用.
    事实上你可以制作一个接收POST数据的ASP页面,使用IIS,接收VB客户端发送过来的HTTP请求就行了.实现:
    服务端:IIS,ASP,SQL Server
    客户端:VB,Internet Transfer Control