应用实例
下面以Sybase
11.9.2为例,编制一个简单的工作人员管理程序,介绍ADO的具体实现方法和步骤。数据库名称为Workerdb,只包括一个表(Worker),其结构如下:
字段名称 宽度 注释
code nchar(4) 代号
name char(8) 姓名
…… …… ……
首先安装ADO,在VB的“工程”/“引用”对话框中选择“ActiveX Data Object 2. 5 Library”(ADODB)。其中“ADO Recordset 2. 5 Library”是一个客户端的版本(ADOR),因为不需要Connection对象来建立与远程数据源的联系,所以ADOR对于客户端的数据访问来说已经足够了。
下面是部分主要代码:
1. 处理代码
’在工程菜单中引用Microsoft ActiveX Data Object 2. 5 Library
’声明ADO连接对象为工程级全局变量
Public cndbase As New ADODB.Connection
……
’自定义连接数据库函数
Public Function ConnectDbase(StrConnect As String) As Boolean
On Error GoTo ErrHandle
cndbase.ConnectionString = StrConnect
cndbase.Open
cndbase.CursorLocation = adUseClient
ConnectDbase = True
Exit Function
ErrHandle:
ConnectDbase = False
End Function
Private Sub Form_Load()
……
输入 VarServer ’服务名称
VarDbase ’数据库名称
VarUser ’用户名称
VarPassword ’用户口令
……
’连接数据库,采取无DSN连接方法
StrConnect = “Provider=MSDASQL;”
+“Driver={” & VarDriver &“};”
+“SRVR=” & VarServer & “;”
+“DB=” & VarDbase & “;”
+“DSN=;”
+“UID=” & VarUser & “;”
+“PWD=” & VarPassword & “;”
+ “Persist Security Info=False” ’不采用集成安全机制
if ConnectDbase(StrConnect) Then
Exit Sub
else
myexit = MsgBox(“数据库连接失败!请检查连接设置信息。”, vbOKOnly, “错误提示:”)
Unload me
endif
ErrHand:
myexit = MsgBox(“错误程序:” & Err. Source & Chr(10) & “错误代码:” & Err. Number & Chr(10) & “错误信息:” & Err.Description, VbAbortRetryIgnore, “错误提示:”)
If myexit = 3 Then
Err.Clear
Unload Me
Else
If myexit = 4 Then
Err.Clear
Resume
Else
Err.Clear
Resume Next
End If
End If
End Sub
Private Sub Form_Unload()
……
cndbase.Close
Set cndbase = Nothing
End Sub