打开“控制面板”→“管理工具”→“数据源 (ODBC)”后,出现窗体。单击“系统DSN”选项卡后,点击“添加”按钮,出现窗体。选择其中的“SQL Server”后,单击“完成”,出现窗体。单击“下一步”,。选择“SQL Server验证”,一般ID为“sa”,密码为空(实际要根据具体情况输入)。单击“下一步”。更改默认数据库为所建立的数据库。单击“下一步”后完成设置。(2)VB中使用ADO数据库
控件,实现与数据库的连接使用ADO数据库控件需要添加组件,控件工具箱中就出现需要的控件。将控件放在需要的窗体中,。鼠标右键调出ADODC属性,进行设置。在未建立数据源的情况下,也可进行“新建”或者使用第三个选择“使用连接字符串”。数据源设立完毕,就需要设立身份验证和记录源。以上设置也可在ADODC1控件的属性中进行设置(3)代码实现Public conn As ADODB.ConnectionPublic rs As ADODB.RecordsetPublic addFlag As Boolean '声明部分Public Function OpenCn(ByVal Cip As String, ByVal users As String, ByVal pw As String) As Boolean '连接模块 填写数据库等
信息Dim mag As StringOn Error GoTo strerrmagSet conn = New ADODB.Connectionconn.ConnectionTimeout = 25conn.Provider = "sqloledb"conn.Properties("data source").Value = Cip '
服务器的名字conn.Properties("initial catalog").Value = "pubs" '库名'conn.Properties("integrated security").Value = "SSPI" '登陆类型conn.Properties("user id").Value = users 'SQL库名conn.Properties("password").Value = pw '密码'sql = "Provider=SQLOLEDB.1Persist Security Info=FalseUser ID=sapassword=Initial Catalog=pubsData Source=127.0.0.1" '如果不用这个模块也行可以,这一句便是常用的引擎。'conn.ConnectionString = sql conn.OpenOpenCn = TrueIf conn.State = 1 Then addFlag = TrueExit Functionstrerrmag: mag = "Data can't connect" Call MsgBox(mag, vbOKOnly, "Error:Data connect") addFlag = False Exit Function '连接错误消息End Function'关闭数据库,释放连接Public Sub cloCn()On Error Resume NextIf conn.State <>adStateClosed Then conn.CloseSet conn = NothingEnd SubPublic Function openRs(ByVal strsql As String) As Boolean '连接数据库记录集Dim mag As StringDim rpy As BooleanOn Error GoTo strerrmag Set rs = New ADODB.Recordset If addFlag = False Then rpy = True With rs .ActiveConnection = conn .CursorLocation = adUseClient .CursorType = adOpenKeyset .LockType = adLockOptimistic .Open strsql End With addFlag = True openRs = True 'End '将记录集给rs Exit Functionstrerrmag: mag = "data not connect" Call MsgBox(mag, vbOKOnly, "error:connect") openRs = False End 'Exit Function '连接错误消息End FunctionPublic Sub cloRs()On Error Resume NextIf rs.State <>adStateClosed Then rs.CloneSet rs = Nothing '释放记录集End Sub'服务器端,在窗口上创建两个Winsock控件,名字分别为SockServer和SockClient,然后复制以下代码
Private
Sub
Form_Load()
With
SockServer
.LocalPort
=
2000
'指定端口号(一般指定1024以上的端口就好)
.Bind
End
With
End
Sub
'这里处理接收客户端发送来的信息
Private
Sub
SockClient_DataArrival(ByVal
bytesTotal
As
Long)
Dim
Tmp
As
String
SockClient.GetData
Tmp
'接收客户端发送来的信息
MsgBox
Tmp
'显示客户端发来的信息
End
Sub
'这里是处理收到的连接请求
Private
Sub
SockServer_ConnectionRequest(ByVal
requestID
As
Long)
SockClient.Close
'防止曾经打开过SockClient
SockClient.Accept
requestID
'接受客户端的请求
End
Sub
'当然服务器端也可以向客户端发送信息,如在窗口上创建一个Command1控件,然后再添加一下代码
Private
Sub
Command1_Click()
If
SockClient.State
=
7
Then
'判断是否处于连接状态
7表示已经连接
SockClient.SendData
"这是服务器端发来的信息"
End
If
End
Sub
'向客户端添加一个Winsock控件,名为SockClient,一个Command控件名字用默认的Command1,然后复制一下代码
Private
Sub
Form_Load()
SockClient.RemoteHost
=
"127.0.0.1"
'这里应该填入服务器IP地址,如果是在同一台电脑上可以用127.0.0.1
SockClient.RemotePort
=
2000
'这里是设置服务器打开的端口,由于前面服务器端口设为了2000,所以这里也要设置为2000
SockClient.Connect
End
Sub
'连接成功后会激活Connect事件
Private
Sub
SockClient_Connect()
MsgBox
"已经连接到了服务器:"
&
SockClient.RemoteHost
End
Sub
'这里是接收服务器发送来的信息
Private
Sub
SockClient_DataArrival(ByVal
bytesTotal
As
Long)
Dim
Tmp
As
String
SockClient.GetData
Tmp
MsgBox
Tmp,
vbOKOnly,
"收到的信息"
End
Sub
'这里是向服务器发送信息
Private
Sub
Command1_Click()
If
SockClient.State
=
7
Then
'如果处于连接状态,则发送数据
SockClient.SendData
"这是客户端发来的信息"
'发送信息,内容可以任意
End
If
End
Sub
用winsock控件可以实现通过TCP/UDP连接其他网络程序并进行通讯的功能
用internet transfer control控件可以实现通过HTTP/FTP连接相关服务器并通讯的功能
以上两个控件的具体用法可以参考《VB6.0 控件参考手册》(上、下)
评论列表(0条)