Databases Reference
In-Depth Information
100% Managed
ADO.NET Provider
“Managed”
ADO.NET Provider
.NET Managed
Client
.NET Managed
Client
100% Managed
.NET Provider
“Managed”
.NET Provider
.NET CLR
.NET CLR
Database Vendor
Client Libraries
Unmanaged Code
Figure 7-1
100% managed data provider versus “managed” data provider
The guidelines in this section will help you to optimize system performance
when selecting and using ADO.NET objects and methods.
Because of concurrency restrictions, the
CommandBuilder
often generates ineffi-
cient SQL statements. In most cases, you can code statements yourself that are
more efficient than those the
CommandBuilder
generates. In addition, the
CommandBuilder
object generates statements at runtime. Each time the
DataAdapter.Update
method is called, the
CommandBuilder
analyzes the con-
tents of the result set and generates
Insert
/
Update
/
Delete
statements for the
DataAdapter
. When you explicitly specify
Insert
/
Update
/
Delete
statements,
this extra processing step is eliminated.