DataAdapter

Last updated
DataAdapter
Developer Microsoft
Written in C# (reference implementation)
Platform .NET Framework, .NET
Included withSystem.Data/System.Data.Common
Type Data access component (ADO.NET)

In ADO.NET, a data adapter (DataAdapter) is an object that acts as a bridge between a data source and a disconnected in-memory data representation such as a DataSet, enabling data to be retrieved into the DataSet and later written back to the data source. [1] [2]

Contents

Overview

The DataAdapter is an abstract base class in the System.Data.Common namespace; provider-specific implementations (such as for SQL Server, OLE DB, or ODBC) typically derive from DbDataAdapter. [1] [3] Data adapters are used with the ADO.NET disconnected model, where an application loads data into a memory-resident DataSet (including related tables, constraints, and relationships) and later reconciles changes back to the underlying data source. [4]

Operation

Filling a DataSet

A DataAdapter populates a DataSet (or DataTable) through its Fill method, using its SelectCommand to retrieve rows from the data source. [5]

Updating the data source

A DataAdapter can persist changes made in the DataSet back to the data source using Update; it applies INSERT, UPDATE and DELETE operations as appropriate based on changes tracked in the DataSet, using command objects such as InsertCommand, UpdateCommand and DeleteCommand. [6]

Schema and table mappings

Data adapters can also configure a DataSet's schema from the data source (for example, using FillSchema) and can map source table names to DataTable names through table mappings. [7] [3]

Implementations

Provider-specific data adapters include:

A DataSet can be filled and updated using multiple DataAdapter instances, and can contain related tables originating from different data sources exposed through different providers. [11]

See also

References

  1. 1 2 "DataAdapter Class (System.Data.Common)". Microsoft Learn. Retrieved 13 December 2025.
  2. "ADO.NET architecture". Microsoft Learn. 15 September 2021. Retrieved 13 December 2025.
  3. 1 2 "DbDataAdapter Class (System.Data.Common)". Microsoft Learn. Retrieved 13 December 2025.
  4. "ADO.NET DataSets". Microsoft Learn. 15 September 2021. Retrieved 13 December 2025.
  5. "Populating a DataSet from a DataAdapter". Microsoft Learn. 15 September 2021. Retrieved 13 December 2025.
  6. "Updating Data Sources with DataAdapters". Microsoft Learn. 29 November 2021. Retrieved 13 December 2025.
  7. "DataAdapter.FillSchema Method (System.Data.Common)". Microsoft Learn. Retrieved 13 December 2025.
  8. "SqlDataAdapter Class (System.Data.SqlClient)". Microsoft Learn. Retrieved 13 December 2025.
  9. "OleDbDataAdapter Class (System.Data.OleDb)". Microsoft Learn. Retrieved 13 December 2025.
  10. "OdbcDataAdapter Class (System.Data.Odbc)". Microsoft Learn. Retrieved 13 December 2025.
  11. "Populate a DataSet from a DataAdapter". Microsoft Learn. 4 September 2024. Retrieved 13 December 2025.