datagridview 自动更新、删除、添加的问题
好久没有摸.net了,也不想自己写数据库联接等一大段代码了,想实现最简单的通过datagridview实现数据的添加、修改、删除的功能。我是这样做的:
1)用vs2008(选择的framework2.0)的连接access数据库生成了数据源及dataset
2) 在窗体上放置了一个datagridview,允许添加、修改、删除,并将数据源绑定到dataset里的某一个表(table1)中
3)窗体下方自动生成了 “db1dataset","db1datasetbindinSource","table1BindingSource","table1DataAdapter"
启动窗口显示数据时没问题,我编辑单元格并输入数据,要更新数据库,在datagridview的rowleave事件里
table1BindingSource.update(db1dataset.tables(0))
发现数据已保存到内存中(不关程序,反复打开该数据窗口,有更改后的数据),但并没有更新到数据库,我以为是commandbuilder的问题,又在之前加入:
Dim builder As OleDb.OleDbCommandBuilder = New System.Data.OleDb.OleDbCommandBuilder(table1DataAdapter)
结果提示类型不匹配,我用ctype将其强制转换成oledbdataadapter提示,无法进行转换,另外我还用
db1dataset.tables(0).acceptchanges()
反而连内存中的数据也没有了。
还有一个问题是,我本来想在cellvaluechange事件里写入该代码,可是主键列一更新就自动增长,不知如何解决
请大侠指教,好久没碰了,谢谢!