OdbcDataAdapter.UpdateCommand Propriété

Définition

Obtient ou définit une instruction SQL ou une procédure stockée utilisée pour mettre à jour les enregistrements dans la source de données.

public:
 property System::Data::Odbc::OdbcCommand ^ UpdateCommand { System::Data::Odbc::OdbcCommand ^ get(); void set(System::Data::Odbc::OdbcCommand ^ value); };
public System.Data.Odbc.OdbcCommand UpdateCommand { get; set; }
public System.Data.Odbc.OdbcCommand? UpdateCommand { get; set; }
member this.UpdateCommand : System.Data.Odbc.OdbcCommand with get, set
Public Property UpdateCommand As OdbcCommand

Valeur de propriété

Un OdbcCommand utilisé lors d’une opération de mise à jour pour mettre à jour les enregistrements dans la source de données qui correspondent à des lignes modifiées dans le DataSet.

Exemples

L’exemple suivant crée un OdbcDataAdapter et définit les SelectCommand propriétés et UpdateCommand . Il suppose que vous avez déjà créé un OdbcConnection objet.

public static OdbcDataAdapter CreateDataAdapter(
    OdbcConnection connection)
{
    string selectCommand =
        "SELECT CustomerID, CompanyName FROM Customers";

    OdbcDataAdapter adapter = new OdbcDataAdapter(
        selectCommand, connection);
    adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

    // Create the Insert, Update and Delete commands.
    adapter.InsertCommand = new OdbcCommand(
        "INSERT INTO Customers (CustomerID, CompanyName) " +
        "VALUES (?, ?)");

    adapter.UpdateCommand = new OdbcCommand(
        "UPDATE Customers SET CustomerID = ?, CompanyName = ? " +
        "WHERE CustomerID = ?");

    adapter.DeleteCommand = new OdbcCommand(
        "DELETE FROM Customers WHERE CustomerID = ?");

    // Create the parameters.
    adapter.InsertCommand.Parameters.Add("@CustomerID",
        OdbcType.Char, 5, "CustomerID");
    adapter.InsertCommand.Parameters.Add("@CompanyName",
        OdbcType.VarChar, 40, "CompanyName");

    adapter.UpdateCommand.Parameters.Add("@CustomerID",
        OdbcType.Char, 5, "CustomerID");
    adapter.UpdateCommand.Parameters.Add("@CompanyName",
        OdbcType.VarChar, 40, "CompanyName");
    adapter.UpdateCommand.Parameters.Add("@oldCustomerID",
        OdbcType.Char, 5, "CustomerID").SourceVersion =
        DataRowVersion.Original;

    adapter.DeleteCommand.Parameters.Add("@CustomerID",
        OdbcType.Char, 5, "CustomerID").SourceVersion =
        DataRowVersion.Original;

    return adapter;
}
Public Function CreateDataAdapter( _
    ByVal connection As OdbcConnection) As OdbcDataAdapter

    Dim selectCommand As String = _
        "SELECT CustomerID, CompanyName FROM Customers"
    Dim adapter As OdbcDataAdapter = _
        New OdbcDataAdapter(selectCommand, connection)

    adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey

    ' Create the Insert, Update and Delete commands.
    adapter.InsertCommand = New OdbcCommand( _
        "INSERT INTO Customers (CustomerID, CompanyName) " & _
         "VALUES (?, ?)")

    adapter.UpdateCommand = New OdbcCommand( _
        "UPDATE Customers SET CustomerID = ?, CompanyName = ? " & _
        "WHERE CustomerID = ?")

    adapter.DeleteCommand = New OdbcCommand( _
        "DELETE FROM Customers WHERE CustomerID = ?")

    ' Create the parameters.
    adapter.InsertCommand.Parameters.Add( _
        "@CustomerID", OdbcType.Char, 5, "CustomerID")
    adapter.InsertCommand.Parameters.Add( _
        "@CompanyName", OdbcType.VarChar, 40, "CompanyName")

    adapter.UpdateCommand.Parameters.Add( _
        "@CustomerID", OdbcType.Char, 5, "CustomerID")
    adapter.UpdateCommand.Parameters.Add( _
        "@CompanyName", OdbcType.VarChar, 40, "CompanyName")
    adapter.UpdateCommand.Parameters.Add( _
        "@oldCustomerID", OdbcType.Char, 5, "CustomerID").SourceVersion = _
        DataRowVersion.Original

    adapter.DeleteCommand.Parameters.Add( _
        "@CustomerID", OdbcType.Char, 5, "CustomerID").SourceVersion = _
        DataRowVersion.Original

    Return adapter
End Function

Remarques

Quand UpdateCommand est affecté à un précédemment créé OdbcCommand, le n’est OdbcCommand pas cloné. Au lieu de cela, conserve UpdateCommand une référence à l’objet créé OdbcCommand précédemment.

Lors d’une opération de mise à jour, si UpdateCommand n’est pas défini et que des informations sur la clé primaire sont présentes dans , DataSetvous pouvez utiliser la OdbcCommandBuilder classe pour générer UpdateCommandautomatiquement et les commandes supplémentaires nécessaires pour rapprocher le DataSet avec la source de données. Pour ce faire, définissez la SelectCommand propriété de .OdbcDataAdapter La logique de génération exige également que les informations de colonne clés soient présentes dans .DataSet Pour plus d’informations, consultez Génération de commandes avec CommandBuilders.

Notes

Si l’exécution de cette commande retourne des lignes, ces lignes peuvent être fusionnées avec le en fonction de la DataSet façon dont vous définissez la UpdatedRowSource propriété de l’objet OdbcCommand .

S’applique à