Data provider is the most common term as a developer, we often hear it. But to be exact, what does it mean? Let’s simplify things up with SBerry
Data Provider is a software library consisting of numerous classes which provide Data Access services.
Put it in simple words:
Data Providers contain numerous classes which can be used to connect to database, retrieve, Insert, update and delete data.
Data providers acts as a mediator between our application code and the Database. What ever the connection we specify the provider will use it to connect to Database and the code we write using the classes in the provider will execute the corresponding DML statements in the database.
Hence there are the following .Net Framework Data providers.
|.Net Data Provider for SQL SERVER||System.Data.SqlClient|
|.Net Data Provider for OLE DB||System.Data.OleDb|
|.Net Data Provider for ODBC||System.Data.Odbc|
|.Net Data Provider for Oracle||System.Data.OracleClient|
|.Net Data Provider for EntityClient||System.Data.EntityClient|
|.Net Data Provider for Sql Server Compact4||System.Data.SqlServerCe|
Hence if we use oracle as our back end then .Net Data Provider for Oracle is the Data Provider we opt for fast and optimized performance of our .Net application. OLE DB(Object linking and Embedding Databases) provider enables us to connect to any database even non relational. It is particularly desirable when our application back end may change over time. Similarly ODBC (Open Database Connectivity) is for connecting to any relational Databases.
Hope this clears out the confusion. Happy Coding