用到了显示表格,修改数据,写回数据表的项目,几乎用了两天的事件查询电子书和网页资料,竟然无法找到将DataSet修改后的数据使用update写到数据表中的任何一个正确的代码,几乎快崩溃了,看来我真的不是学VB的脑袋啊,几乎忍不住要转回delphi了,就在刚才抱着最后一次运行的绝望修改后,TNND竟然可以了,真想说粗话,谁说VB好学了,你过来,我保证不打死你!
我确认我的代码基本正确,也参考了帮助文件,没想到的是问题的关键是数据表,竟然必须要设置主键,但错误提示尽然和主键没有一点屁关系!!!
觉得不好看的自己修改一下吧,我真是奇怪,VB的代码确实怪怪的,真的真的真的不如delphi写着舒服!
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim constr As String = "Data Source=.;Initial Catalog=数据库;Integrated Security=True"
Dim sqlstr As String = "select * from 数据表"
Dim scon As New SqlConnection(constr)
Dim sda As New SqlDataAdapter()
sda.SelectCommand = New SqlCommand(sqlstr, scon)
Dim builder As New SqlCommandBuilder(sda)
scon.Open()
Dim customers As New DataSet
sda.Fill(customers, " 数据表")
DataGridView1.DataSource = customers.Tables(" 数据表")
customers.Tables(" 数据表").Rows(0)(8) = 7 '为了演示省事了,你可以先显示数据,再修改数据,再写回数据表
customers.Tables(" 数据表").Rows(1)(8) = 7
Button1.Text = sda.Update(customers, " 数据表").ToString
customers.AcceptChanges()
End Sub