Updating the Data Source
The Update( )
method
can submit DataSet
changes back to the data
source. It uses the statements in the
DeleteCommand
, InsertCommand
,
and UpdateCommand
objects to attempt to update the
data source with records that have been deleted, inserted, or updated
in the DataSet
. Each row is updated individually
and not as part of a batch process. Furthermore, the order in which
the rows are processed is determined by the indexes on the
DataTable
and not by the update type. Figure 14-2 illustrates how the
DataAdapter
is used both to reconcile changed data
in the DataSet
with the data source using the
Update()
method and to retrieve data from the data
source using the Fill()
method.
The delete, insert, and update statements can be automatically
generated using the
CommandBuilder
object, but this is probably not the best approach for production
systems. The CommandBuilder
object is discussed in
more detail in Chapter 15. Alternatively, custom
update logic can be used where the DeleteCommand
,
InsertCommand
, and
UpdateCommand
are each defined. Compared with
using the CommandBuilder
, custom logic can
significantly improve performance and can implement solutions to
complex updating and conflict-resolution scenarios. Custom update
logic is also examined in detail in Chapter 15.
The following example demonstrates ...
Get ADO.NET in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.