2.自定义过程
(1)完成对数据库连接对象cn的赋值,并打开,以备使用。
Public Sub opencn() '打开连接
Set cn = New ADODB.Connection
' constr字符串,用于编程者根据所使用的数据库不同(如Access、SQL Server),来修改成不同的连接字符串。本例中以cx.mdb为例。
constr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\cx.mdb;Persist Security Info=False"
cn.Open constr
End Sub
(2)完成对数据库连接对象cn关闭,及置空功能。
Public Sub closecn()
cn.Close
Set cn = Nothing
End Sub
(3)完成对数据库记录集对象rs的设置,并根据查询条件,对数据库进行查询,返回结果集。
Public Sub openrs(sqlstr As String)
Set rs = New ADODB.Recordset
With rs
.ActiveConnection = cn
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockBatchOptimistic
.Source = sqlstr
.Open
Set .ActiveConnection = Nothing
End With
End Sub
(4)完成对数据库连接记录集对象rs关闭,及置空功能。
Public Sub closers()
rs.Close
Set rs = Nothing
End Sub
(5)根据查询结果,将符合条件的记录添加到Grid2中,并显示。
Public Sub fillgrid()
Dim j As Integer
Dim i As Integer
Dim m As Integer '记录集行值
Dim n As Integer '记录集列值
Dim rssum As ADODB.Recordset
Opencn '调用子过程Opencn,打开数据库连接
'调用子过程Openrs,并传参数—查询的内容
openrs strdemand & strcondition
closecn '调用子过程closecn,关闭数据库连接
Grid2.Clear '清空表格Grid2
Grid2.FormatString = ""
'判断记录集中是否有记录,无记录跳出程序段
If rs.RecordCount <= 0 Then Exit Sub
m = rs.RecordCount 'm变量用来记录记录集rs中的记录总数
n = rs.Fields.Count 'n变量用来记录记录集rs的字段的总数
rs.MoveFirst
|