刚刚学习Visual Studio 2010,用VB语言。以前会asp编程访问数据库,可是新的VB.net2010访问数据库与asp完全不同。摸索了一段时间,会读取了,但现在的问题是:数据无法写回源数据库,副本dataset修改了,但access数据库却不能写入。
代码如下:
====================
'打开数据库
Dim myconn As OleDbConnection = New OleDbConnection()
myconn.ConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:\db.mdb"
myconn.Open()
Dim strcom As String = "select * from book"
Dim odda As OleDbDataAdapter = New OleDbDataAdapter(strcom, myconn)
Dim mydataset As DataSet = New DataSet()
'将数据库写入dataset对象中
odda.Fill(mydataset)
'将dataset绑定到DataGridView控件上,只是为了查看数据是否被修改。
DataGridView1.DataSource = mydataset.Tables(0)
'修改第1个表的第1条记录中的"book_name"字段的内容
mydataset.Tables(0).Rows(0).Item("book_name") = "大学3年级"
'接受/更新
mydataset.AcceptChanges()
odda.Update(mydataset)
========================
以上代码执行无错误,从DataGridView1看,副本数据已被修改,但access文件却未修改。研究无果,请高手指点如何将更新后的数据写回数据库 。
------解决思路----------------------
忘了你用的是oldb,应该用 Dim daa As New OleDb.OleDbCommandBuilder(odda)