有关datagrivew保存的问题
左丘文 2011-12-27 10:31:57 在winform中,有两个表userinfo,usergroup,一个表是用户的资料信息,一个表是用户关联哪些组。
数据分两层:
第一层为 几个textbox显示用户的基本资料
第二层为一个datagridview. 显示该用户关联的群组。
其中第一层与第二层是以loginid来关联,但datagridview中的第一列loginid是隐藏。
现在想为用户增加一组。
在批量保存datagridview中的数据时,提示loginid为空不能保存
DataTable dt = new DataTable();
dt = ((DataView)this.dgvUserGroup.DataSource).Table;
int id = W1.UpdateTable(dt, "SELECT * FROM UserGroups", "SCS");
其中W1.UpdateTable是我自定义的一个使用SqlCommandBuilder批量更新数据 的方法。该方法确认是可以使用的。
这样的情况下可以用SqlCommandBuilder 了.
但听一些人讲在使用SqlCommandBuilder :
1.只能更新一个表,不能更新两个或两个以上相关联的表
2.表中必须有主键 这点要注意,没有主键的话,会抛异常的。
3.更新的表中字段不能有image类型的
上面我的主键是被我隐藏了。那我要如何做处理才能完成的批量更新呢