DbDataAdapter Class

Definition

Aids implementation of the IDbDataAdapter interface. Inheritors of DbDataAdapter implement a set of functions to provide strong typing, but inherit most of the functionality needed to fully implement a DataAdapter.

public abstract class DbDataAdapter : System.Data.Common.DataAdapter, ICloneable, System.Data.IDbDataAdapter
public abstract class DbDataAdapter : System.Data.Common.DataAdapter, ICloneable
Inheritance
Derived
Implements

Remarks

The DbDataAdapter class inherits from the DataAdapter class and implements the IDbDataAdapter interface. It helps a class implement a DataAdapter designed for use with a relational database.

An application does not create an instance of the DbDataAdapter class directly, but creates an instance of a class that inherits from it.

Classes that inherit DbDataAdapter must implement the inherited members, and typically define additional members to add provider-specific functionality. For example, the DbDataAdapter class defines the SelectCommand property, and the DbDataAdapter class defines eight overloads of the Fill method. In turn, the OleDbDataAdapter class inherits the Fill method, and also defines two additional overloads of Fill that take an ADO Recordset object as a parameter.

Notes to Implementers

When you inherit from the DbDataAdapter class, we recommend that you implement the following constructors:

Item Description
*Prv*DataAdapter() Initializes a new instance of the *Prv*DataAdapter class.
*Prv*DataAdapter(*Prv*Command *selectCommand*) Initializes a new instance of the *Prv*DataAdapter class with the specified SQL SELECT statement.
*Prv*DataAdapter(string *selectCommandText*, string *selectConnectionString*) Initializes a new instance of the *Prv*DataAdapter class with an SQL SELECT statement and a connection string.
*Prv*DataAdapter(string *selectCommandText*, *Prv*Connection *selectConnection*) Initializes a new instance of the *Prv*DataAdapter class with an SQL SELECT statement and a *Prv*Connection object.

To promote consistency among .NET Framework data providers, you should name the inheriting class in the form PrvDataAdapter, where Prv is the uniform prefix given to all classes in a specific .NET Framework data provider namespace. For example, "Sql" is the prefix of the SqlDataAdapter class in the System.Data.SqlClient namespace.

Constructors

DbDataAdapter()

Initializes a new instance of a DataAdapter class.

DbDataAdapter(DbDataAdapter)

Initializes a new instance of the DataAdapter class from an existing object of the same type.

Fields

DefaultSourceTableName

The default name used by the DataAdapter object for table mappings.

Properties

AcceptChangesDuringFill

Gets or sets a value indicating whether AcceptChanges() is called on a DataRow after it is added to the DataTable during any of the Fill operations.

(Inherited from DataAdapter)
AcceptChangesDuringUpdate

Gets or sets whether AcceptChanges() is called during a Update(DataSet).

(Inherited from DataAdapter)
CanRaiseEvents

Gets a value indicating whether the component can raise an event.

(Inherited from Component)
Container

Gets the IContainer that contains the Component.

(Inherited from Component)
ContinueUpdateOnError

Gets or sets a value that specifies whether to generate an exception when an error is encountered during a row update.

(Inherited from DataAdapter)
DeleteCommand

Gets or sets a command for deleting records from the data set.

DesignMode

Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Events

Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
FillCommandBehavior

Gets or sets the behavior of the command used to fill the data adapter.

FillLoadOption

Gets or sets the LoadOption that determines how the adapter fills the DataTable from the DbDataReader.

(Inherited from DataAdapter)
InsertCommand

Gets or sets a command used to insert new records into the data source.

MissingMappingAction

Determines the action to take when incoming data does not have a matching table or column.

(Inherited from DataAdapter)
MissingSchemaAction

Determines the action to take when existing DataSet schema does not match incoming data.

(Inherited from DataAdapter)
ReturnProviderSpecificTypes

Gets or sets whether the Fill method should return provider-specific values or common CLS-compliant values.

(Inherited from DataAdapter)
SelectCommand

Gets or sets a command used to select records in the data source.

Site

Gets or sets the ISite of the Component.

(Inherited from Component)
TableMappings

Gets a collection that provides the primary mapping between a source table and a DataTable.

(Inherited from DataAdapter)
UpdateBatchSize

Gets or sets a value that enables or disables batch processing support, and specifies the number of commands that can be executed in a batch.

UpdateCommand

Gets or sets a command used to update records in the data source.

Methods

AddToBatch(IDbCommand)

Adds a IDbCommand to the current batch.

ClearBatch()

Removes all IDbCommand objects from the batch.

CloneInternals()
Obsolete.
Obsolete.
Obsolete.
Obsolete.

Creates a copy of this instance of DataAdapter.

(Inherited from DataAdapter)
CreateObjRef(Type)

Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
CreateRowUpdatedEvent(DataRow, IDbCommand, StatementType, DataTableMapping)

Initializes a new instance of the RowUpdatedEventArgs class.

CreateRowUpdatingEvent(DataRow, IDbCommand, StatementType, DataTableMapping)

Initializes a new instance of the RowUpdatingEventArgs class.

CreateTableMappings()

Creates a new DataTableMappingCollection.

(Inherited from DataAdapter)
Dispose()

Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean)

Releases the unmanaged resources used by the DbDataAdapter and optionally releases the managed resources.

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
ExecuteBatch()

Executes the current batch.

Fill(DataSet, Int32, Int32, String, IDbCommand, CommandBehavior)

Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataSet and source table names, command string, and command behavior.

Fill(DataSet, Int32, Int32, String)

Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataSet and DataTable names.

Fill(DataSet, String, IDataReader, Int32, Int32)

Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataSet, DataTable, and IDataReader names.

Fill(DataSet, String, IDataReader, Int32, Int32)

Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataSet and DataTable names.

(Inherited from DataAdapter)
Fill(DataSet, String)

Adds or refreshes rows in the DataSet to match those in the data source using the DataSet and DataTable names.

Fill(DataSet)

Adds or refreshes rows in the DataSet.

Fill(DataTable, IDataReader)

Adds or refreshes rows in a DataTable to match those in the data source using the specified DataTable and IDataReader names.

Fill(DataTable, IDataReader)

Adds or refreshes rows in the DataTable to match those in the data source using the DataTable name and the specified IDataReader.

(Inherited from DataAdapter)
Fill(DataTable, IDbCommand, CommandBehavior)

Adds or refreshes rows in a DataTable to match those in the data source using the specified DataTable, IDbCommand and CommandBehavior.

Fill(DataTable)

Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataTable name.

Fill(DataTable[], IDataReader, Int32, Int32)

Adds or refreshes rows in a specified range in the collection of DataTable objects to match those in the data source.

(Inherited from DataAdapter)
Fill(DataTable[], Int32, Int32, IDbCommand, CommandBehavior)

Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataSet and DataTable names.

Fill(Int32, Int32, DataTable[])

Adds or refreshes rows in one or more DataTable objects to match those in the data source starting at the specified record and retrieving up to the specified maximum number of records.

FillSchema(DataSet, SchemaType, IDbCommand, String, CommandBehavior)

Adds a DataTable to the specified DataSet and configures the schema to match that in the data source based on the specified SchemaType.

FillSchema(DataSet, SchemaType, String, IDataReader)

Adds a DataTable to the specified DataSet.

(Inherited from DataAdapter)
FillSchema(DataSet, SchemaType, String)

Adds a DataTable to the specified DataSet and configures the schema to match that in the data source based upon the specified SchemaType and DataTable.

FillSchema(DataSet, SchemaType)

Adds a DataTable named "Table" to the specified DataSet and configures the schema to match that in the data source based on the specified SchemaType.

FillSchema(DataTable, SchemaType, IDataReader)

Adds a DataTable to the specified DataSet.

(Inherited from DataAdapter)
FillSchema(DataTable, SchemaType, IDbCommand, CommandBehavior)

Configures the schema of the specified DataTable based on the specified SchemaType, command string, and CommandBehavior values.

FillSchema(DataTable, SchemaType)

Configures the schema of the specified DataTable based on the specified SchemaType.

GetBatchedParameter(Int32, Int32)

Returns a IDataParameter from one of the commands in the current batch.

GetBatchedRecordsAffected(Int32, Int32, Exception)

Returns information about an individual update attempt within a larger batched update.

GetFillParameters()

Gets the parameters set by the user when executing an SQL SELECT statement.

GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetLifetimeService()
Obsolete.

Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetService(Type)

Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
HasTableMappings()

Indicates whether a DataTableMappingCollection has been created.

(Inherited from DataAdapter)
InitializeBatching()

Initializes batching for the DbDataAdapter.

InitializeLifetimeService()
Obsolete.

Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean)

Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
OnFillError(FillErrorEventArgs)

Raises the FillError event.

OnFillError(FillErrorEventArgs)

Invoked when an error occurs during a Fill.

(Inherited from DataAdapter)
OnRowUpdated(RowUpdatedEventArgs)

Raises the RowUpdated event of a .NET data provider.

OnRowUpdating(RowUpdatingEventArgs)

Raises the RowUpdating event of a .NET data provider.

ResetFillLoadOption()

Resets FillLoadOption to its default state and causes Fill(DataSet) to honor AcceptChangesDuringFill.

(Inherited from DataAdapter)
ShouldSerializeAcceptChangesDuringFill()

Determines whether the AcceptChangesDuringFill property should be persisted.

(Inherited from DataAdapter)
ShouldSerializeFillLoadOption()

Determines whether the FillLoadOption property should be persisted.

(Inherited from DataAdapter)
ShouldSerializeTableMappings()

Determines whether one or more DataTableMapping objects exist and they should be persisted.

(Inherited from DataAdapter)
TerminateBatching()

Ends batching for the DbDataAdapter.

ToString()

Returns a String containing the name of the Component, if any. This method should not be overridden.

(Inherited from Component)
Update(DataRow[], DataTableMapping)

Updates the values in the database by executing the respective INSERT, UPDATE, or DELETE statements for each inserted, updated, or deleted row in the specified array of DataRow objects.

Update(DataRow[])

Updates the values in the database by executing the respective INSERT, UPDATE, or DELETE statements for each inserted, updated, or deleted row in the specified array in the DataSet.

Update(DataSet, String)

Updates the values in the database by executing the respective INSERT, UPDATE, or DELETE statements for each inserted, updated, or deleted row in the DataSet with the specified DataTable name.

Update(DataSet)

Updates the values in the database by executing the respective INSERT, UPDATE, or DELETE statements for each inserted, updated, or deleted row in the specified DataSet.

Update(DataTable)

Updates the values in the database by executing the respective INSERT, UPDATE, or DELETE statements for each inserted, updated, or deleted row in the specified DataTable.

Events

Disposed

Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
FillError

Returned when an error occurs during a fill operation.

FillError

Returned when an error occurs during a fill operation.

(Inherited from DataAdapter)

Explicit Interface Implementations

ICloneable.Clone()
Obsolete.

Creates a new object that is a copy of the current instance.

IDataAdapter.TableMappings

Gets a collection that indicates how a source table is mapped to a dataset table.

(Inherited from DataAdapter)
IDbDataAdapter.DeleteCommand

Gets or sets an SQL statement for deleting records from the data set.

IDbDataAdapter.InsertCommand

Gets or sets an SQL statement used to insert new records into the data source.

IDbDataAdapter.SelectCommand

Gets or sets an SQL statement used to select records in the data source.

IDbDataAdapter.UpdateCommand

Gets or sets an SQL statement used to update records in the data source.

Applies to

Product Versions
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

See also