我无法在数据网格视图中查看MS Access表的更新数据。我正在使用Visual Basic 2008运行时。
Private Sub Form5_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim cn As New OleDb.OleDbConnection
Dim da As OleDb.OleDbDataAdapter
Dim dt As New DataTable
cn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Documents and Settings\user\Desktop\Project\myproject.accdb"
cn.Open()
da = New OleDb.OleDbDataAdapter("SELECT [c_id], c_name, c_address, c_no " & _
"FROM customer ORDER BY [c_id]", cn)
da.Fill(dt)
Me.DataGridView1.DataSource = dt
cn.Close()
End Sub
答案 0 :(得分:0)
您的DataTable当前正在填写表单的_Load
事件,因此只有在首次加载表单时才会发生一次。为了查看对数据的任何更改(例如,通过其他表单直接应用于数据库表),您需要刷新DataTable的内容。
这样做的一种方法是将da.Fill(dt)
语句移动到Form5_Activate
事件处理程序。这样,当重新激活表单时,DataTable将重新填充。