积极答复者
DataGridview中的数据更改如何效率回写到数据库中

问题
答案
-
Hi,
用SqlDataAdapter.Update 和 SqlCommandBuilder,例:
Using conn As New SqlConnection(connectionString) Dim dad As New SqlDataAdapter() dad.SelectCommand = New sqlCommand("Select * FROM table1", conn) Dim builder As New SqlCommandBuilder(dad) conn.Open() Dim ds As New DataSet() dad.Fill(ds) datagridview1.DataSource = ds.Table(0) '改data过后 adapter.Update(ds) End Using
- 已标记为答案 feiyun0112Moderator 2010年4月6日 6:16
全部回复
-
Hi,
用SqlDataAdapter.Update 和 SqlCommandBuilder,例:
Using conn As New SqlConnection(connectionString) Dim dad As New SqlDataAdapter() dad.SelectCommand = New sqlCommand("Select * FROM table1", conn) Dim builder As New SqlCommandBuilder(dad) conn.Open() Dim ds As New DataSet() dad.Fill(ds) datagridview1.DataSource = ds.Table(0) '改data过后 adapter.Update(ds) End Using
- 已标记为答案 feiyun0112Moderator 2010年4月6日 6:16
-
你好 Lanning,
另外补充的是调用GetChanges方法可以获得一个只有编辑过的行的Table。DataSet.GetChanges获得一个只包含改变过的表和行的DataSet。DataTable.GetChanges获取这个表里改变过的行。但当你调用DataAdapter.Update方法时会自动更新被编辑过的行,不需要你自己去调GetChanges方法来找了。
注意,更新数据前不要调用AcceptChanges方法,否则获不到改变过的行。
Sincerely,
Kira Qian
Please remember to mark the replies as answers if they help and unmark them if they provide no help.
Welcome to the All-In-One Code Framework!