
 | |
OleDBPro or ADO
- OleDBPro is always faster than ADO, and much faster than ADO in many
cases.
ADOs are mainly designed for
internet development and supporting automation. It must be used by all kinds
of languages such as Visual Basic, Java, JavaScript, VBScript, and so on. It
is not optimized for C++ development. Most of the examples and tutorial
books are written for the application of ADOs for internet and Visual Basic
developments. However, OleDBPro is optimized purely for C++ development.
ADOs need to extensively convert
all native data into VARIANT data inside and supports data collections. All
of these drawbacks are totally eliminated in the OleDBPro module, even
though it supports VARIANT data. It makes the OleDBPro module runs faster.
If your network is 100 MB or over, or your database is a desktop file,
OleDBPro can be three times or more faster than ADO.
For parameterized statements or
stored procedures, ADOs only send one set of parameter data into a data
source. OleDBPro supports sending multiple sets (20, 40, ....) of data into
a data source to reduce the data movement over expensive network by default.
OleDBPro uses this way to boost data accessing performance with great ease
and simplicity.
OleDBPro has a UNIQUE feature,
Just-In-Need fetching, at this writing time. For many cases, it can improve
record navigation especially for a query with a big number of records, as
shown in the example.
- OleDBPro can access all of OLEDB provider features, but ADO can't.
Many OLEDB providers have
specific interfaces. ADOs can't fully take advantage of these
provider-specific interfaces. However, OleDBPro can take advantage of all of
them. For example, SQL Server exposes an interface IRowsetFastLoad. We can
use it by extending CRBase in this module for inserting data into a table at
the fastest speed as shown in the attached example FastLoad.
- OleDBPro is simpler than ADO in C++ development environment.
It is still difficult and tedious
to use ADOs because we have to convert all of VARIANT data back again into
native C++ data type and do this kind of dirty work. OleDBPro doesn't have
this problem.
With help of OleDBPro, you need
less code than ADO under all of cases. See the attached samples.
- OleDBPro is much smaller in size than ADO.
ADO(477k), ADOX (181k) and ADOMD
(169k). However, OleDBPro is less than 180K in size and saves memory and CPU
resource.
- Source code of OleDBPro will help you a lot.
You can get all the source codes
of OleDBPro, but you can't get any source codes of ADO, ADOX and ADOMD. You
can directly compile OleDBPro to your software if you buy a copy of source
code. It will certainly help you understand OLEDB with provided 30 samples.
|