在更新数据时指定表

作者: zhushican 分类: 建站教程 发布时间: 2014年8月18日 次浏览 0条评论

DataAdapter对象的Update方法为源数据更新提供了一种简单有效的方法。如果DataSet中有多个表,那么,只要对每个表调用一次Update方法,就可以利用对表中各行的修改结果对源数据进行自动更新。这些修改结果是按照DataSet的表中各行的顺序进行应用的。但是有一点需要特别注意,如果源数据中包含外键,也就是说各个表之间有强制性的关系,那么这些表的处理顺序就会导致错误的发生。这都依赖于所要进行的更新的类型、源数据库中的规则和触发器。

例如,如果DataSet中包含来自表BookList、表Authorlist和表Bookprices的行,那么我们就可以向DataSet的Books表中加入一个新的记录,并将与之相匹配的行(这些行是以作为主键和外键的ISBN为基础的)加入到DataSet的Auhtors表和Prices表中。

但是,只有Books表是第一个被处理的表时,才能运行Update方法。如果想要首先对Auhtors表或Prices表进行处理,由于没有一个带有ISBN值的父行与新插入的子行相匹配,因此会出现错误信息。也就是说向数据库的表中添加孤单行的时候会违背可用作参考的整体性原则。但是要删除一条记录以及Auhtors表或Prices表中的所有子行,就要按照相反的顺序。不可能在数据库表存在子行的情况下将父行删除,除非数据库中包含着级联删除用来将子行删除的规则和触发器。如果情况真的是那样的话,那么对子表的删除操作就会失败,因为其中的行已经被删除了

本文出自 老域名查询 ,转载时请注明出处及相应链接。

本文永久链接: http://www.sc8323.com/2014/686.html

回顶部