What is the difference in using the below commands in .net
using System.Data.Odbc;----> It will be referring to Open database Connectivity (common across all database )
using System.Data.Oledb;----->It will be referring to Object Linking and Embedding, Database
using Oracle.DataAccess.Client;----->It is provided my Microsoft for Oracle
using Oracle.DataAccess.Types;-------> .NET DataProvider from Oracle ------------------>is this a ODP connection?
what is the significant difference in these commands ODBC ,OLEDB and ODP
in short they are all different data access methods. Different standards for different purposes.
To explain the differences would be better if I point you to the Microsoft documentation
as this is where they are specified:
Follow links for ODBC Overview here :: http://msdn.microsoft.com/en-us/library/ms710220%28v=vs.85%29.aspx
OLEDB Overview here ::: http://msdn.microsoft.com/en-us/library/ms718124%28v=vs.85%29.aspx
It lets you use .net framework with ODBC drivers (not just oracle's ODBC driver of course).
For using .net framework with an OLEDB provider
The last two are Oracle Data Provider for .net - ODP.net (written by Oracle not Microsoft)
From the ODP.net docs:
The Oracle.DataAccess.Client namespace contains ODP.NET classes and enumerations.
The Oracle.DataAccess.Types namespace contains the Oracle Data Provider for .NET Types (ODP.NET Types).
Hope that gives you pointers to research each of those!