OleDbDataAdapter Class
Represents a set of data commands and a database connection that are used to fill the DataSet and update the data source.
Assembly: System.Data (in System.Data.dll)
The OleDbDataAdapter serves as a bridge between a DataSet and data source for retrieving and saving data. The OleDbDataAdapter 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 OleDbDataAdapter fills a DataSet, it will create the appropriate 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 OleDbDataAdapter 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 (ADO.NET).
Note that some OLE DB providers, including the MSDataShape provider, do not return base table or primary key information. Therefore, the OleDbDataAdapter cannot correctly set the PrimaryKey property on any created DataTable. In these cases you should explicitly specify primary keys for tables in the DataSet.
The OleDbDataAdapter also includes the SelectCommand, InsertCommand, DeleteCommand, UpdateCommand, and TableMappings properties to facilitate the loading and updating of data.
When you create an instance of OleDbDataAdapter, properties are set to their initial values. For a list of these values, see the OleDbDataAdapter constructor.
The following example uses the OleDbCommand, OleDbDataAdapter and OleDbConnection, to select records from an Access data source, and populate a DataSet with the selected rows. The filled DataSet is then returned. To accomplish this, the method is passed an initialized DataSet, a connection string, and a query string that is an SQL SELECT statement.
Public Function CreateDataAdapter(ByVal selectCommand As String, _ ByVal connection As OleDbConnection) As OleDbDataAdapter Dim adapter As OleDbDataAdapter = _ New OleDbDataAdapter(selectCommand, connection) adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey ' Create the commands. adapter.InsertCommand = New OleDbCommand( _ "INSERT INTO Customers (CustomerID, CompanyName) " & _ "VALUES (?, ?)") adapter.UpdateCommand = New OleDbCommand( _ "UPDATE Customers SET CustomerID = ?, CompanyName = ? " & _ "WHERE CustomerID = ?") adapter.DeleteCommand = New OleDbCommand( _ "DELETE FROM Customers WHERE CustomerID = ?") ' Create the parameters. adapter.InsertCommand.Parameters.Add( _ "@CustomerID", OleDbType.Char, 5, "CustomerID") adapter.InsertCommand.Parameters.Add( _ "@CompanyName", OleDbType.VarChar, 40, "CompanyName") adapter.UpdateCommand.Parameters.Add( _ "@CustomerID", OleDbType.Char, 5, "CustomerID") adapter.UpdateCommand.Parameters.Add( _ "@CompanyName", OleDbType.VarChar, 40, "CompanyName") adapter.UpdateCommand.Parameters.Add( _ "@oldCustomerID", OleDbType.Char, 5, "CustomerID").SourceVersion = _ DataRowVersion.Original adapter.DeleteCommand.Parameters.Add( _ "@CustomerID", OleDbType.Char, 5, "CustomerID").SourceVersion = _ DataRowVersion.Original Return adapter End Function
System.MarshalByRefObject
System.ComponentModel.Component
System.Data.Common.DataAdapter
System.Data.Common.DbDataAdapter
System.Data.OleDb.OleDbDataAdapter
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.