当我有数据表和dataadapter时,如何将记录添加到mysql数据库?我可以向表中添加数据,但使用datatable.acceptchanges不会将数据保存到数据库中
答案 0 :(得分:0)
您应该使用DataAdapter.Update
方法
您没有提供任何代码示例,因此我向您展示了此过程的伪代码。
' Create the adapter with a select command text to retrieve your records'
Dim da = new MySqlDataAdapter(selecttext, connection)
Dim table = new DataTable()
da.Fill(table)
' Create a MySqlCommandBuilder to automatically generate the INSERT/UPDATE/DELETE commands'
Dim builder = new MySqlCommandBuilder(da)
' add the new rows to the table'
Dim row = table.NewRow()
.....
table.Rows.Add(row)
' Send the changes to the database'
' do not call AcceptChanges before the Update'
' otherwise every row will be in the State Unchanged '
' and no changes will be saved to the database'
da.Update(table)
您应该删除AcceptChanges调用。这种方法很棘手。它不会尝试更新数据库,但它仅用于更改已更改或插入的行的状态,并从内存数据表中删除已删除的行。