Welcome To The Home Of The Visual FoxPro Experts  
home. signup. forum. archives. search. google. articles. downloads. faq. members. weblogs. sponsors. rss.
 From: Andy Kramek
  Where is Andy Kramek?
 Westminster Circle, Akron
 Ohio - United States
 Andy Kramek
 To: Dexter Carlit
  Where is Dexter Carlit?
 Cabanatuan
 Philippines
 Dexter Carlit
 Tags
Subject: RE: Why ODBC and Not OLEDB?
Thread ID: 110533 Message ID: 110811 # Views: 198 # Ratings: 3
Version: Visual FoxPro 9 Category: ODBC, ADO and OLEDB
Date: Monday, October 23, 2006 1:57:47 PM         
   


>> I found this site while surfing on the net to use ODBC instead of OLEDB and on the link below shows that there are three major reasons that they were not using OLEDB:
>
> http://www.15seconds.com/Issue/961210.htm?voteresult=5
>
> Reason not to use OLEDB:
> OLEDB does not support connection caching.
> OLEDB is slower then ODBC.
> OLEDB requires more code.
>
> but some says OLEDB is much faster than ODBC....


The only "some" people who make unqualified statements that OLEDB is faster than ODBC is Microsoft. The reason? Well, first it is THEIR technology and, if you use it you are tied to using Windows, and Microsoft tools (OLEDB is not supported on non-windows platforms). Second, it IS faster, but only if you are working in VB/.NET and using a back end database. When you use VFP (which is optimized for ODBC) then it is NOT faster. All of my testing has shown that ODBC is up to 30 times faster than OLDEB in VFP.

I repeat, this is not to say that you will get the same result in other environments/situations, but in VFP there is no doubt that ODBC is significantly faster than OLEDB.

Also, you are assuming that ODBC and OLEDB are, in some sense, equivalent. This is an error, they are NOT, they are entirely different and are intended for entirely different uses.

ODBC defines standard interfaces for accessing data in a variety of relational databases. It is fast, lightweight, and provides a common method that is not optimized for any specific data source.
Is is intended for use with relational databases that support SQL only
- Not reliant on Native API
- Not reliant on Operating System
- In VFP returns a VFP Cursor

OLE DB is a set of Component Object Model (COM) interfaces that provide applications with uniform access to data stored in diverse information sources and that also provide the ability to implement additional database services. These interfaces support the amount of DBMS functionality appropriate to the data store, enabling it to share its data.
It is intended for use with any data store, relational or not, whether or not it supports SQL
- Totally reliant on Native API
- COM based, so totally reliant on Operating System
- Results always returned as an ActiveX Data Object

So if what you want to do is access a relational database from VFP then ODBC is the only rational choice!

Regards
Andy Kramek
Microsoft MVP (Visual FoxPro)
Tightline Computers Inc, Akron Ohio, USA



COMPLETE THREAD
Why ODBC and Not OLEDB? Posted by Dexter Carlit @ 10/19/2006 10:00:17 PM
RE: Why ODBC and Not OLEDB? Posted by Pete Sass @ 10/20/2006 2:44:12 PM
RE: Why ODBC and Not OLEDB? Posted by Dexter Carlit @ 10/20/2006 5:22:23 PM
RE: Why ODBC and Not OLEDB? Posted by Pete Sass @ 10/20/2006 7:30:36 PM
RE: Why ODBC and Not OLEDB? Posted by Ken Murphy @ 10/20/2006 7:37:19 PM
RE: Why ODBC and Not OLEDB? Posted by Bernard Bout @ 10/23/2006 10:38:51 AM
RE: Why ODBC and Not OLEDB? Posted by Ryan Lashway @ 12/4/2006 9:02:45 PM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 10/23/2006 1:57:47 PM
RE: Why ODBC and Not OLEDB? Posted by Eric den Doop @ 10/23/2006 2:43:15 PM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 10/24/2006 12:17:38 PM
RE: Why ODBC and Not OLEDB? Posted by Nilson Rishi @ 10/23/2006 3:32:12 PM
RE: Why ODBC and Not OLEDB? Posted by Ken Murphy @ 10/23/2006 6:37:52 PM
RE: Why ODBC and Not OLEDB? Posted by Nilson Rishi @ 10/24/2006 5:17:33 AM
RE: Why ODBC and Not OLEDB? Posted by Bernard Bout @ 10/24/2006 6:18:13 AM
RE: Why ODBC and Not OLEDB? Posted by Nilson Rishi @ 10/24/2006 8:31:50 AM
RE: Why ODBC and Not OLEDB? Posted by tushar @ 10/24/2006 7:22:47 AM
RE: Why ODBC and Not OLEDB? Posted by Nilson Rishi @ 10/24/2006 10:00:29 AM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 10/24/2006 1:32:41 PM
RE: Why ODBC and Not OLEDB? Posted by tushar @ 10/25/2006 9:14:35 AM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 10/25/2006 1:10:22 PM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 10/24/2006 12:26:39 PM
RE: Why ODBC and Not OLEDB? Posted by Nilson Rishi @ 10/24/2006 1:03:04 PM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 10/24/2006 1:21:46 PM
RE: Why ODBC and Not OLEDB? Posted by Pete Sass @ 10/24/2006 10:23:04 PM
RE: Why ODBC and Not OLEDB? Posted by Ken Murphy @ 10/25/2006 1:05:40 AM
RE: Why ODBC and Not OLEDB? Posted by Nilson Rishi @ 10/25/2006 4:31:57 AM
RE: Why ODBC and Not OLEDB? Posted by tushar @ 10/25/2006 9:28:28 AM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 10/25/2006 3:04:41 PM
RE: Why ODBC and Not OLEDB? Posted by Pete Sass @ 10/25/2006 4:10:42 PM
RE: Why ODBC and Not OLEDB? Posted by Ken Murphy @ 10/25/2006 4:47:32 PM
RE: Why ODBC and Not OLEDB? Posted by Bernard Bout @ 10/25/2006 6:13:41 PM
RE: Why ODBC and Not OLEDB? Posted by Ken Murphy @ 10/25/2006 6:40:19 PM
RE: Why ODBC and Not OLEDB? Posted by Bernard Bout @ 10/26/2006 5:55:08 AM
RE: Why ODBC and Not OLEDB? Posted by Ken Murphy @ 10/26/2006 2:33:34 PM
RE: Why ODBC and Not OLEDB? Posted by Bernard Bout @ 10/26/2006 11:33:28 PM
RE: Why ODBC and Not OLEDB? Posted by Randy Smith @ 11/28/2006 8:59:48 PM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 11/29/2006 1:15:09 PM
RE: Why ODBC and Not OLEDB? Posted by Randy Smith @ 11/29/2006 2:58:16 PM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 11/29/2006 7:27:04 PM
RE: Why ODBC and Not OLEDB? Posted by Randy Smith @ 11/30/2006 11:14:13 PM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 12/1/2006 1:00:35 PM
RE: Why ODBC and Not OLEDB? Posted by Randy Smith @ 12/1/2006 4:03:51 PM
RE: Why ODBC and Not OLEDB? Posted by Andy Kramek @ 12/1/2006 5:21:24 PM
RE: Why ODBC and Not OLEDB? Posted by Randy Smith @ 12/5/2006 1:25:04 AM
RE: Why ODBC and Not OLEDB? Posted by Boudewijn Lutgerink @ 10/27/2006 11:33:27 AM
RE: Why ODBC and Not OLEDB? Posted by Ken Murphy @ 10/27/2006 2:27:33 PM
RE: Why ODBC and Not OLEDB? Posted by Boudewijn Lutgerink @ 12/5/2006 12:55:03 PM
RE: Why ODBC and Not OLEDB? Posted by Ken Murphy @ 12/5/2006 3:12:45 PM