用vb写程序的时候,经常需要让DataGrid控件显示数据库的内容,一般都是通过把DataGrid和ADO控件绑定实现的,这样比较麻烦。后来我就想写代码实现这个功能,代码如下: Public Function GetMDBRecordset(SQL As String, DatabasePath As String, Optional DatabasePassword As String) As Recordset On Error GoTo ErrorStats Dim wadoConnection As New Connection Dim wadoRecordset As New Recordset Dim PasswordString As String If Len(DatabasePassword) <> 0 Then PasswordString = ";Persist Security Info=False;Jet OLEDB:Database Password=" & DatabasePassword End If wadoConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DatabasePath & PasswordString
With wadoRecordset .ActiveConnection = wadoConnection .Source = SQL .CursorType = adOpenKeyset .LockType = adLockOptimistic .Open End With
Set GetMDBRecordset = wadoRecordset Exit Function ErrorStats: MsgBox "错误号是:" & Err.Number & vbCrLf & "错误详细信息:" & Err.Description End Function
在一个Button的Click事件中添加如下代码: Set datagrid1.DataSource = GetMDBRecordset("select * from table1", "f:\db1.mdb")