By not storing the calculated column, you avoid having to update it whenever the data in one of the other columns changes. NET's Data Set class is sometimes described as a "relational database in memory," it's important to remember that there are differences between databases and Data Sets. Although I have added only a single calculated Data Column to each Data Table in this example, you can have multiple calculated Data Columns in a single Data Table.
In this particular case, the are designed to manage calculated columns. You need to be careful, though, not to create circular references (in which one column depends on another column, which in turn depends on the first column).
The ADO Recordset object is used to hold a set of records from a database table.
A Recordset object consist of records and columns (fields).
Submitting changes in batch mode, exploiting the Data Set and its disconnected model, often appears as the perfect solution. The serialization mechanism of the Data Set would increase that by a factor. More often than not, data is made of cross-related tables in which parent/child relationships are in place to define the data model and to extract a specific subset of information like detail views and subtotals. NET provides you with the tools to configure the runtime environment so that changes can automatically be cascaded from parent to child rows.
So can we conclude that all applications that deal with data are the same and can be built using a common pattern? Other aspects, including scalability and performance, affect and influence the design.
All distributed applications must be scalable to some extent.
In the next section we will take a closer look at ADO's batch updates, what they can offer you, and why they are so important.
However, in this section you won't need them to solve the problem of updating a join, because in ADO, joins are naturally updatable.