Ce sujet n'a pas encore été évalué - Évaluez ce sujet

OleDbDataAdapter, classe

Mise à jour : novembre 2007

Représente un ensemble de commandes de données et une connexion de base de données utilisés pour remplir DataSet et mettre à jour la source de données.

Espace de noms :  System.Data.OleDb
Assembly :  System.Data (dans System.Data.dll)

public sealed class OleDbDataAdapter : DbDataAdapter, 
	IDbDataAdapter, IDataAdapter, ICloneable
public final class OleDbDataAdapter extends DbDataAdapter implements IDbDataAdapter, 
	IDataAdapter, ICloneable
public final class OleDbDataAdapter extends DbDataAdapter implements IDbDataAdapter, IDataAdapter, ICloneable

OleDbDataAdapter joue le rôle de pont entre DataSet et une source de données pour la récupération et l'enregistrement de données. OleDbDataAdapter fournit ce pont en utilisant Fill pour charger les données à partir de la source de données dans DataSet et en utilisant Update pour renvoyer à la source de données les modifications apportées à DataSet.

Lorsque OleDbDataAdapter remplit DataSet, il crée les tables et colonnes appropriées pour les données retournées si elles n'existent pas encore. Cependant, les informations de clés primaires ne sont pas incluses dans le schéma créé implicitement, à moins que la propriété MissingSchemaAction ait la valeur AddWithKey. Vous pouvez également laisser OleDbDataAdapter créer le schéma de DataSet, comprenant les informations de clés primaires, avant de le remplir avec les données à l'aide de FillSchema. Pour plus d'informations, consultez Ajout de contraintes existantes à un DataSet (ADO.NET).

Remarquez que certains fournisseurs OLE DB, notamment le fournisseur MSDataShape, ne retournent pas de table de base ou d'informations de clés primaires. Par conséquent, OleDbDataAdapter ne peut pas définir correctement la propriété PrimaryKey sur tout DataTable créé. Dans ces cas, vous devez spécifier explicitement les clés primaires des tables de DataSet.

OleDbDataAdapter comprend également les propriétés SelectCommand, InsertCommand, DeleteCommand, UpdateCommand et TableMappings pour faciliter le chargement et la mise à jour des données.

Lorsque vous créez une instance de OleDbDataAdapter, les valeurs initiales sont affectées aux propriétés. Pour obtenir la liste de ces valeurs, consultez le constructeur OleDbDataAdapter.

L'exemple suivant utilise OleDbCommand, OleDbDataAdapter et OleDbConnection pour sélectionner les enregistrements dans une source de données Access et remplir DataSet avec les lignes sélectionnées. Le DataSet rempli est ensuite retourné. Pour effectuer cette opération, un DataSet initialisé, une chaîne de connexion et une chaîne de requête qui est une instruction SQL SELECT sont passés à la méthode.

public static OleDbDataAdapter CreateDataAdapter(string selectCommand,
    OleDbConnection connection)
{
    OleDbDataAdapter adapter = new OleDbDataAdapter(selectCommand, connection);

    adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

    // Create the Insert, Update and Delete 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;
}


Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0
Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ