Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
rs.CursorLocation = ADODB.CursorLocationEnum.adUseClient
cn.Open("provider = Microsoft.ACE.OLEDB.12.0;" & "Data Source =" & Application.StartupPath & "\bd.mdb")
rs.Open("select * from Table1", cn, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic)
If cn.State = 1 Then MsgBox("connet")
DataGridView1.DataSource = RS2DT(rs)
End Sub
Private Function RS2DT(ByVal rs As ADODB.Recordset) As DataTable
Dim dt As New DataTable
If rs.RecordCount > 0 Then
On Error Resume Next
For Each f As ADODB.Field In rs.Fields
dt.Columns.Add(f.Name, rs.Fields(f.Name).Value.GetType)
Next
For i = 1 To rs.RecordCount
Dim dr As DataRow
dr = dt.NewRow()
dt.Rows.Add(dr)
Next
For i = 0 To dt.Rows.Count - 1
For Each f As ADODB.Field In rs.Fields
dt.Rows(i)(f.Name) = rs.Fields(f.Name).Value
Next
rs.MoveNext()
Next
End If
Return dt
End Function
Private conStr As String = "provider = Microsoft.ACE.OLEDB.12.0;" & "Data Source =" & Application.StartupPath & "\bd.mdb;"
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim sqlStr As String = "select * from Table1"
Dim dpt As New OleDb.OleDbDataAdapter(sqlStr, conStr)
Dim dt As New DataTable
dpt.Fill(dt)
DataGridView1.DataSource = dt
End Sub
