vb sql server 连接远程服务器的问题

2024年11月22日 09:42
有2个网友回答
网友(1):

你这个地址是你局域网内的地址.外面的人是连接不上的.我给你一个连接数据库的函数.你传递对应的参数就可以了.vb6中连接数据库的方式是通过ADO来实现的.ADO传递的是COM+的组件.需要关闭服务器的防火墙否则是连接不上的.

'******************************************************************************************
'
'功能说明
' 连接数据库
'参数说明
' Condbx 必要参数,连接数据库的连接对象
' DBName 必须参数,数据库名称,当连接数据库为access时,该名称应该包括其数据库的完整路径
' mLogin 连接sql server 2000数据库的登陆名称
' mPassWord 连接sql server 2000数据库的登陆密码
' DBType 连接数据的类型,为access 或 sqlserver其他均为错误值
'返回值:true表示连接成功
' false表示连接失败
'
'******************************************************************************************
Public Function ConnectDatabase(Condbx As ADODB.Connection, DBName As String, Optional mLogin As String = "sa", Optional mPassWord As String = "", Optional DBType As String = "Access", Optional DBserver As String = ".") As Boolean
Dim str As String

On Error Resume Next
With Condbx
If LCase(DBType) = "sqlserver" Then '连接sql server 2000数据库
.ConnectionString = "Provider=SQLOLEDB.1;Password=" & Trim(mPassWord) & ";Persist Security Info=True;User ID=" & Trim(mLogin) & ";Initial Catalog=" & DBName & ";Data Source=" & DBserver
ElseIf LCase(DBType) = "access" Then '连接access数据库
' .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\cha.mdb" & ";Persist Security Info=False"
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBName & ";Persist Security Info=False"
End If
.CommandTimeout = 5000 '设置连接时间
.Open '连接
End With
If Err.Number <> 0 Then '当连接数据库失败的时候
MsgBox "数据库联接失败!错误原因 :" & vbCrLf & Err.Description, vbCritical + vbOKOnly, "错误"
ConnectDatabase = False
Else
ConnectDatabase = True
End If
End Function

这个函数是我自己最早的一个项目中的现成代码.可以直接通过参数连数据库.你可以吧这个复制过去.

网友(2):

楼上的也不看看

Dim conn As New ADODB.Connection, n
dim s as string
Dim rs As New ADODB.Recordset
s= "Driver={SQL Server}; Database=mydb; UID=adm; PWD=123456; Server=172.16.20.142 "
conn.ConnectionString = s
conn.Open

我给你改了,用这个连接后打开了。即可操作数据库!