OdbcDataAdapter Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Represents a set of data commands and a connection to a data source that are used to fill the DataSet and update the data source. This class cannot be inherited.
public ref class OdbcDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable
public ref class OdbcDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable, System::Data::IDbDataAdapter
public ref class OdbcDataAdapter sealed : System::Data::Common::DbDataAdapter
public sealed class OdbcDataAdapter : System.Data.Common.DbDataAdapter, ICloneable
public sealed class OdbcDataAdapter : System.Data.Common.DbDataAdapter, ICloneable, System.Data.IDbDataAdapter
public sealed class OdbcDataAdapter : System.Data.Common.DbDataAdapter
type OdbcDataAdapter = class
inherit DbDataAdapter
interface IDataAdapter
interface IDbDataAdapter
interface ICloneable
type OdbcDataAdapter = class
inherit DbDataAdapter
interface IDbDataAdapter
interface IDataAdapter
interface ICloneable
Public NotInheritable Class OdbcDataAdapter
Inherits DbDataAdapter
Implements ICloneable
Public NotInheritable Class OdbcDataAdapter
Inherits DbDataAdapter
Implements ICloneable, IDbDataAdapter
Public NotInheritable Class OdbcDataAdapter
Inherits DbDataAdapter
- Inheritance
- Implements
Examples
The following example uses OdbcCommand, OdbcDataAdapter, and OdbcConnection to select records and populate a DataSet
with the selected rows.
public DataSet GetDataSetFromAdapter(
DataSet dataSet, string connectionString, string queryString)
{
using (OdbcConnection connection =
new OdbcConnection(connectionString))
{
OdbcDataAdapter adapter =
new OdbcDataAdapter(queryString, connection);
// Open the connection and fill the DataSet.
try
{
connection.Open();
adapter.Fill(dataSet);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
// The connection is automatically closed when the
// code exits the using block.
}
return dataSet;
}
Public Function GetDataSetFromAdapter( _
ByVal dataSet As DataSet, ByVal connectionString As String, _
ByVal queryString As String) As DataSet
Using connection As New OdbcConnection(connectionString)
Dim adapter As New OdbcDataAdapter(queryString, connection)
' Open the connection and fill the DataSet.
Try
connection.Open()
adapter.Fill(dataSet)
Catch ex As Exception
Console.WriteLine(ex.Message)
End Try
' The connection is automatically closed when the
' code exits the Using block.
End Using
Return dataSet
End Function
Remarks
The OdbcDataAdapter serves as a bridge between a DataSet
and data source for retrieving and saving data. The OdbcDataAdapter provides this bridge by using Fill to load data from the data source into the DataSet, and using Update to send changes made in the DataSet back to the data source.
When the OdbcDataAdapter fills a DataSet, it creates the required tables and columns for the returned data if they do not already exist. However, primary key information is not included in the implicitly created schema unless the MissingSchemaAction property is set to AddWithKey. You may also have the OdbcDataAdapter create the schema of the DataSet, including primary key information, before filling it with data using FillSchema. For more information, see Adding Existing Constraints to a DataSet.
Note
When you call the Fill
method on a data source that does not have a primary key column, the OdbcDataAdapter tries to promote the unique constraint column to the primary key. In the process, the OdbcDataAdapter marks the unique constraint as not nullable. This behavior works unless there is a null value in the unique constraint column. If there is a null value, the Fill
method fails with a constraint violation. To avoid this situation, do not allow null values in the unique constraint column.
Note
Due to the limitations of native ODBC drivers, only one DataTable is ever returned when you call FillSchema. This is true even when executing SQL batch statements from which multiple DataTable objects would be expected.
The OdbcDataAdapter also includes the SelectCommand, InsertCommand, DeleteCommand, UpdateCommand, and TableMappings
properties to facilitate loading and updating of data.
Constructors
OdbcDataAdapter() |
Initializes a new instance of the OdbcDataAdapter class. |
OdbcDataAdapter(OdbcCommand) |
Initializes a new instance of the OdbcDataAdapter class with the specified SQL SELECT statement. |
OdbcDataAdapter(String, OdbcConnection) |
Initializes a new instance of the OdbcDataAdapter class with an SQL SELECT statement and an OdbcConnection. |
OdbcDataAdapter(String, String) |
Initializes a new instance of the OdbcDataAdapter class with an SQL SELECT statement and a connection string. |
Fields
DefaultSourceTableName |
The default name used by the DataAdapter object for table mappings. (Inherited from DbDataAdapter) |
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 an SQL statement or stored procedure used to delete records in the data source. |
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. (Inherited from DbDataAdapter) |
FillLoadOption |
Gets or sets the LoadOption that determines how the adapter fills the DataTable from the DbDataReader. (Inherited from DataAdapter) |
InsertCommand |
Gets or sets an SQL statement or stored procedure 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 |
SelectCommand |
Gets or sets an SQL statement or stored procedure 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. (Inherited from DbDataAdapter) |
UpdateCommand |
Gets or sets an SQL statement or stored procedure used to update records in the data source. |
Methods
AddToBatch(IDbCommand) |
Adds a IDbCommand to the current batch. (Inherited from DbDataAdapter) |
ClearBatch() |
Removes all IDbCommand objects from the batch. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
CreateRowUpdatingEvent(DataRow, IDbCommand, StatementType, DataTableMapping) |
Initializes a new instance of the RowUpdatingEventArgs class. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
ExecuteBatch() |
Executes the current batch. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
Fill(DataSet, String) |
Adds or refreshes rows in the DataSet to match those in the data source using the DataSet and DataTable names. (Inherited from DbDataAdapter) |
Fill(DataSet) |
Adds or refreshes rows in the DataSet. (Inherited from DbDataAdapter) |
Fill(DataTable, IDataReader) |
Adds or refreshes rows in a DataTable to match those in the data source using the specified DataTable and IDataReader names. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
Fill(DataTable) |
Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataTable name. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
FillSchema(DataTable, SchemaType) |
Configures the schema of the specified DataTable based on the specified SchemaType. (Inherited from DbDataAdapter) |
GetBatchedParameter(Int32, Int32) |
Returns a IDataParameter from one of the commands in the current batch. (Inherited from DbDataAdapter) |
GetBatchedRecordsAffected(Int32, Int32, Exception) |
Returns information about an individual update attempt within a larger batched update. (Inherited from DbDataAdapter) |
GetFillParameters() |
Gets the parameters set by the user when executing an SQL SELECT statement. (Inherited from DbDataAdapter) |
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. (Inherited from 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. (Inherited from DbDataAdapter) |
OnRowUpdated(RowUpdatedEventArgs) |
Raises the |
OnRowUpdating(RowUpdatingEventArgs) |
Raises the |
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. (Inherited from 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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
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. (Inherited from DbDataAdapter) |
RowUpdated |
Occurs during an update operation after a command is executed against the data source. |
RowUpdating |
Occurs during Update(DataSet) before a command is executed against the data source. |
Explicit Interface Implementations
ICloneable.Clone() |
For a description of this member, see Clone(). |
IDataAdapter.TableMappings |
Gets a collection that indicates how a source table is mapped to a dataset table. (Inherited from DataAdapter) |
IDbDataAdapter.DeleteCommand |
For a description of this member, see DeleteCommand. |
IDbDataAdapter.InsertCommand |
For a description of this member, see InsertCommand. |
IDbDataAdapter.SelectCommand |
For a description of this member, see SelectCommand. |
IDbDataAdapter.UpdateCommand |
For a description of this member, see UpdateCommand. |