DataGridView的更新问题,急!急!急!
我的页面上只有一个DataGridView和一个Button,想通过OleDbDataAdapter.Update更新ACCESS表里的值,不知我的代码错在那里,一直不能更新效果,请高手帮忙!
我的代码:
Imports System.Data
Imports System.Data.OleDb
Imports System.Data.Odbc
Public Class Form1
Dim objConn As New OleDbConnection
Dim objAdap As OleDbDataAdapter
Dim objDs As New DataSet
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim db As New DB
objConn = db.CreateCon() '这里创建一个连接
Dim strSql = "Select * From test "
objAdap = New OleDbDataAdapter(strSql, objConn)
Dim builder As OleDbCommandBuilder
builder = New OleDbCommandBuilder(objAdap)
objAdap.Fill(objDs, "tt ")
DataGridView1.DataSource = objDs.Tables( "tt ")
objConn.Close()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'点击按钮更新
objAdap.Update(objDs, "tt ")
objDs.AcceptChanges()
objConn.Close()
MessageBox.Show( "Update OK ")
End Sub
End Class
[解决办法]
您的更新所用的SQL语句写了么就是以 "Insert … "、 "Update … "和 "Delete … "开头的那些,新建CommandString为这些的SqlDbCommand,然后分别加到objAdap的InsertCommand、UpdateCommand和DeleteCommand中,这样你的更新才会被添加到数据库中,要不然都是在DataSet中完成的,不能影响数据库。
如果lz能贴多一点代码,尤其是记录的字段,我可以写一些代码给lz参考参考。