Monday, July 2, 2007

Choosing Correct Data Provider for Your Application

What is Data Provider?


A data provider in the .NET Framework serves as a bridge between an application and a data source. ADO.NET relies on the services of .NET data providers. These provide access to the underlying data source.


Currently, ADO.NET ships with two categories of providers: bridge providers and native providers. Bridge providers, such as those supplied for OLE DB and ODBC, allow you to use data libraries designed for earlier data access technologies. Native providers, such as the SQL Server and Oracle providers, typically offer performance improvements due, in part, to the fact that there is one less layer of abstraction.


Choosing between Data Providers



Data Provider

Use when connecting to


SQL Server .NET Data Provider                     

  1. Microsoft SQL Server 7.0 or later                                   
  2. Microsoft Data Engine (MSDE) from a single-tier application
  1. Found in System.Data.SqlClient namespace                                 
  2. Lightweight and fast. Accesses database directly without any intermediate layers

OLE DB .NET Data Provider

  1. Microsoft SQL Server 6.5 or earlier
  2. Microsoft Access database in a single-tier application
  3. Any other data source exposed using OLE DB
  1. Found in System.Data.OleDb namespace
  2. Slightly less efficient since it communicates to OLE DB data source through OLE DB Service Component and OLE DB Provider

.NET Data Provider for Oracle

Oracle data sources

  1. Found in System.Data.OracleClient namespace
  2. Supports Oracle client software version 8.1.7 or later
  3. Requires Oracle client to be installed on the system

ODBC .NET Data Provider

Data source exposed using ODBC

  1. Found in System.Data.Odbc namespace
  2. Slightly less efficient since it communicates to ODBC data source through ODBC Service Component and ODBC Provider




Thanks & Regards,

Arun Manglick

SMTS || Microsoft Technology Practice || Bridgestone - Tyre Link || Persistent Systems || 3023-6258


DISCLAIMER ========== This e-mail may contain privileged and confidential information which is the property of Persistent Systems Pvt. Ltd. It is intended only for the use of the individual or entity to which it is addressed. If you are not the intended recipient, you are not authorized to read, retain, copy, print, distribute or use this message. If you have received this communication in error, please notify the sender and delete all copies of this message. Persistent Systems Pvt. Ltd. does not accept any liability for virus infected mails.

No comments:

Post a Comment