VB连接局域网的SQL数据库的问题?

来源:百度知道 编辑:UC知道 时间:2024/06/07 08:04:19
我做了一个VB程序,后台数据库为SQL,具体代码在下面,在我电脑上完全可以用.但我在隔壁寝室(同是校园网)的同学电脑里安装了SQL,并建立数据库,想在把VB连接数据库的代码改一下,从而能够用我的电脑里的VB程序访问他电脑里的SQL数据库,很多大虾告诉我Data Source=对方IP就可以了,可是我每次用都不行,并提示[DBNETLTB][ConnectionOpen(Connect()).SQL]SQL Server不存在或拒绝访问,我也试过用ConnectionTimeout测试能否连接,都不行. 我想得到解决办法,一经采用,定会加分.代码如下((对方IP为172.30.200.17):
Private Sub Form_Load()
Dim sqlstr As String

Dim ServerName As String
Dim DatabaseName As String
Dim UserName As String
Dim Password As String
Set DBCnn = New ADODB.Connection
ServerName = "172.30.200.17"
DatabaseName = "tyxxk"
UserName = "sa"
Password = ""
DBCnn.ConnectionTimeout = 20
DBCnn.CursorLocation = adUseClient
DBCnn.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=true;" & _
"User ID=" & UserName & ";Initial Catalog=" & DatabaseName & _
";Data Source=" &

这样做理论上肯定可以的,你可以先在他机子上测试

有可能是他的防火墙堵住了sql 得端口,你可以先关掉防火墙看看
或者是他的 sql server 有其他问题
测试

1。在他的机子上用127.0.0.1 连接数据库
2。在他的机子上用172.30.200.17 连接数据库

如果在他的机子上两个都可以,那在你的机子上一定也可以

1.在同一网段:
在命令提示符下输入"telnet 172.30.200.17 1433",
如果连接不成功,检查防火墙,reinstall系统
2.不同网段:
在他机器上打sql的sp3补丁

这个问题,个人亲历, 我单位里的电脑就是无法联接sql,使用odbc进行测试也不成,提示与楼主一模一样。网段设置也一切正常。当时钻牛角钻总以为是程序不对,结果换了一个机器才发现程序一切正常。

最终没办法,哥们重装的系统,同时把防火墙也卸了,结果就好了,回头想研究一样,也没再恢复出原来那种情况。所以,你把系统重做下,一定可以解决的。

"User ID=" & UserName & ";Initial Catalog=" & DatabaseName & _
";Data Source=" & ServerName & ";pwd=" & Password

这里你必须需要修改编号:

首先在你的机器上,能够访问到对方的数据库: 在我的电脑地址栏,能看到文件的路径, 那么把文件的路径和数据库名称放在:Data Source="文件路径和数据库名称".

2.需要把数据库共享,这个必须要共享,否则对方无法打开数据库.

3.不要重装系统,那是笨人的方法.