如何将更改从DataSet保存到物理数据库

时间:2013-05-25 07:49:44

标签: vb.net visual-studio-2010 dataset

我一直在看这个问题一段时间,看不出我做错了什么。

我想将DataSet( ds.Tables(“Login”))的更改保存到物理数据库(数据源='| DataDirectory | \ MyDatabase.accdb ) 。但它无法正常工作。数据未保存在物理数据库中。

任何想法如何解决?

 Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles txtUsername.Click
    Dim ds As New DataSet()
    Dim dt As DataTable
    ds.Tables.Add(New DataTable("Login"))
    Dim connStr As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='|DataDirectory|\MyDatabase.accdb'"
    Dim sqlStr As String = "SELECT * FROM Login"
    Dim dataAdapter As New OleDb.OleDbDataAdapter(sqlStr, connStr)
    dataAdapter.Fill(ds.Tables("Login"))

    dt = ds.Tables("Login")

    Dim dr As DataRow
    dr = dt.NewRow()
    dr("Username") = txtUserName.Text
    dr("Password") = txtPassword.Text

    dt.Rows.Add(dr)
    ds.AcceptChanges()
    dataAdapter.Update(ds.Tables("Login"))
End Sub

1 个答案:

答案 0 :(得分:0)

请看这篇文章,尤其是第7步,其中说明您需要设置UpdateCommand。

https://support.microsoft.com/en-us/kb/301248