我正在尝试将项目填充到数据网格中,然后使用 2 个按钮(一个加载,一个将保存)和表单上的数据网格将它们更新回数据库。我在更新时不断遇到“查询表达式中的语法错误(缺少运算符)”,我不知道为什么。我的另一个问题是我的 DataAdapter 和 Dataset 需要在内存中的哪个位置进行标注?下课?
'this loads my data from db into datagrid
Dim con As New OleDb.OleDbConnection
Dim sql As String
con.ConnectionString = "Provider=Microsoft.jet.oledb.4.0;data source=dbsrc.mdb"
con.Open()
sql = "SELECT * from [Employee Assignments]"
da = New OleDb.OleDbDataAdapter(sql, con)
da.Fill(ds, "Assignments")
con.Close()
DataGridView1.DataSource = ds.Tables("Assignments")
以下代码应更新我的数据库以反映在 datagridview 中所做的更改
'this will eventually update the datagrid back into the db
Dim cb As New OleDb.OleDbCommandBuilder(da)
Dim con As New OleDb.OleDbConnection
'Dim sql As String
con.ConnectionString = "Provider=Microsoft.jet.oledb.4.0;data source=dbsrc.mdb"
con.Open()
da.Update(ds, "Assignments")
con.Close()
DataGridView1.DataSource = ds.Tables("Assignments")
我在 msdn 上阅读了这篇文章 - http://msdn.microsoft.com/en-us/library/system.data.common.dataadapter.update.aspx - 但它似乎没有多大帮助,我很困惑,但我相信我的问题是没有识别正确的数据集并将其传递回数据库。我应该如何处理我使用 DataAdapter 提取、修改然后发送回数据库的数据集?