分层更新

“分层更新”是指在维护引用完整性规则的同时,将已更新数据(来自具有两个或多个相关表的数据集)存回到数据库中的过程。“引用完整性”是指数据库中的约束所提供的一致性规则,这些约束可对插入、更新和删除相关记录的行为进行控制。例如,引用完整性可强制要求在为客户创建订单之前先创建该客户的记录。

保存相关数据表中修改过的数据比保存单个表中的数据稍为复杂。这是因为必须以特定的顺序执行每个相关表的 Update、Insert 和 Delete 命令,以避免违反引用完整性约束。例如,假设有一个订单录入应用程序,您可以使用该程序管理新的和现有的客户和订单。如果您需要删除一个现有客户,则在删除该客户记录之前,必须先删除该客户的所有订单。如果要添加新的客户(带订单),必须首先插入新的客户记录,然后再插入该客户的订单,这是表中外键约束的要求。正如这些示例所示,您需要提取数据的特定子集,并以正确的顺序发送更新(Insert、Update 和 Delete)以维护引用完整性。

分层更新功能使用 TableAdapterManager 来管理类型化数据集中的 TableAdapter。TableAdapterManager 组件是 Visual Studio 生成的组件,因此它不是 .NET Framework 的组成部分。有关 TableAdapterManager 类的详细信息,请参见 TableAdapterManager 概述中的“TableAdapterManager 参考”一节。

如果应用程序使用类型化数据集并且允许用户修改相关数据表(存在一对多关系的数据表,例如 Customers 和 Orders)中的数据,则可能需要使用分层更新。

本节内容

参考

DataSet

DataTable

相关章节

在 N 层应用程序中使用数据集

保存数据

创建和编辑类型化数据集

TableAdapter

DataSets in ADO.NET

DataTables in ADO.NET

在 Visual Studio 中访问数据