Tuesday, June 29, 2004

Understanding data providers,data drivers, Odbc,oledb etc









ODBC
- Short for Open DataBase Connectivity, a standard database access
method developed by Microsoft Corporation. The goal of ODBC is to make
it possible to access any data from any application, regardless of
which database management system (DBMS) is handling the data. ODBC
manages this by inserting a middle layer, called a database driver ,
between an application and the DBMS. The purpose of this layer is to
translate the application's data queries into commands that the DBMS
understands. For this to work, both the application and the DBMS must
be ODBC-compliant -- that is, the application must be capable of
issuing ODBC commands and the DBMS must be capable of responding to
them. Since version 2.0, the standard supports SAG SQL.

OLE DB
Over
the years, ODBC has become the standard for client/server database
access. ODBC provides a standards-based interface that requires SQL
processing capabilities and is optimized for a SQL-based approach.
However, what happens if you want to access data in a nonrelational
data source that doesn't use SQL (e.g., Microsoft Exchange Server,
which doesn't store data relationally)?
Enter OLE DB. OLE DB
builds on ODBC and extends the technology to a component architecture
that delivers higher-level data-access interfaces. This architecture
provides consistent access to SQL, non-SQL, and unstructured data
sources across the enterprise and the Internet. (In fact, for access to
SQL-based data, OLE DB still uses ODBC because it's the most optimized
architecture for working with SQL.) OLE DB consists of three
components: the data consumer (e.g., an application); the data
provider, which contains and exposes data; and the service component,
which processes and transports data (e.g., query processors, cursor
engines). OLE DB is one API that operates against SQL data sources and
non-SQL data sources such as mail and directories

.Net Data Providers
ADO.NET
Data Providers are again, a new version of universal data access, that
access data sources directly to gain performance advantages. ADO.Net
also makes good use of XML standards to more effeciently transmit and
cache data. It uses a more TCP-like connectionless metaphor so that
all ADO.Net providers use sessionless connections. They get data and
don't maintain a session on the server. NET data providers. An
essential component of ADO.NET, a .NET data provider implements
ADO.NET's interfaces. For example, a .NET data provider would implement
the DataReader object so that either your application or the DataSet
object could use it.

No comments: