IDbDataAdapter.UpdateCommand IDbDataAdapter.UpdateCommand IDbDataAdapter.UpdateCommand IDbDataAdapter.UpdateCommand Property

Definizione

Ottiene o imposta un'istruzione SQL utilizzata per aggiornare i record nell'origine dati.Gets or sets an SQL statement used to update records in the data source.

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

Valore della proprietà

Interfaccia IDbCommand utilizzata durante l'operazione di Update(DataSet) per aggiornare i record nell'origine dati relativi alle righe modificate nel set di dati.An IDbCommand used during Update(DataSet) to update records in the data source for modified rows in the data set.

Esempi

Nell'esempio seguente viene creata un'istanza della classe OleDbDataAdapter ereditata e vengono impostate SelectCommand le UpdateCommand proprietà e.The following example creates an instance of the inherited OleDbDataAdapter class, and sets the SelectCommand and UpdateCommand properties. Si presuppone che sia già stato creato OleDbConnection un oggetto.It assumes you have already created an OleDbConnection object.

private static OleDbDataAdapter CreateCustomerAdapter(
    OleDbConnection connection)
{
    OleDbDataAdapter dataAdapter = new OleDbDataAdapter();
    OleDbCommand command;
    OleDbParameter parameter;

    // Create the SelectCommand.
    command = new OleDbCommand("SELECT * FROM dbo.Customers " +
        "WHERE Country = ? AND City = ?", connection);

    command.Parameters.Add("Country", OleDbType.VarChar, 15);
    command.Parameters.Add("City", OleDbType.VarChar, 15);

    dataAdapter.SelectCommand = command;

    // Create the UpdateCommand.
    command = new OleDbCommand(
        "UPDATE dbo.Customers SET CustomerID = ?, CompanyName = ? " +
        "WHERE CustomerID = ?", connection);

    command.Parameters.Add(
        "CustomerID", OleDbType.Char, 5, "CustomerID");
    command.Parameters.Add(
        "CompanyName", OleDbType.VarChar, 40, "CompanyName");

    parameter = command.Parameters.Add(
        "oldCustomerID", OleDbType.Char, 5, "CustomerID");
    parameter.SourceVersion = DataRowVersion.Original;

    dataAdapter.UpdateCommand = command;

    return dataAdapter;
}
Private Function CreateCustomerAdapter( _
    ByVal connection As OleDbConnection) As OleDbDataAdapter

    Dim dataAdapter As OleDbDataAdapter = New OleDbDataAdapter()
    Dim command As OleDbCommand
    Dim parameter As OleDbParameter

    ' Create the SelectCommand.
    command = New OleDbCommand("SELECT * FROM dbo.Customers " & _
        "WHERE Country = ? AND City = ?", connection)

    command.Parameters.Add("Country", OleDbType.VarChar, 15)
    command.Parameters.Add("City", OleDbType.VarChar, 15)

    dataAdapter.SelectCommand = command

    ' Create the UpdateCommand.
    command = New OleDbCommand("UPDATE dbo.Customers " & _
        "SET CustomerID = ?, CompanyName = ? " & _
        "WHERE CustomerID = ?", connection)

    command.Parameters.Add( _
        "CustomerID", OleDbType.Char, 5, "CustomerID")
    command.Parameters.Add( _
        "CompanyName", OleDbType.VarChar, 40, "CompanyName")

    parameter = command.Parameters.Add( _
        "oldCustomerID", OleDbType.Char, 5, "CustomerID")
    parameter.SourceVersion = DataRowVersion.Original

    dataAdapter.UpdateCommand = command

    Return dataAdapter
End Function

Commenti

Durante Update, se questa proprietà non è impostata e le informazioni sulla chiave primaria sono presenti DataSetin, UpdateCommand il può essere generato automaticamente se si imposta SelectCommand la proprietà di un provider di dati .NET Framework.During Update, if this property is not set and primary key information is present in the DataSet, the UpdateCommand can be generated automatically if you set the SelectCommand property of a .NET Framework data provider. Quindi, tutti i comandi aggiuntivi che non vengono impostati vengono generati da CommandBuilder.Then, any additional commands that you do not set are generated by the CommandBuilder. Questa logica di generazione richiede che le informazioni sulle colonne chiave siano DataSetpresenti in.This generation logic requires key column information to be present in the DataSet. Per altre informazioni, vedere generazione di comandi con CommandBuilder.For more information see Generating Commands with CommandBuilders.

Quando UpdateCommand viene assegnato a un oggetto creato IDbCommandin precedenza IDbCommand , non viene clonato.When UpdateCommand is assigned to a previously created IDbCommand, the IDbCommand is not cloned. Mantiene un riferimento all'oggetto creato IDbCommand in precedenza. UpdateCommandThe UpdateCommand maintains a reference to the previously created IDbCommand object.

Nota

Se l'esecuzione di questo comando restituisce righe, queste righe vengono aggiunte a DataSet.If execution of this command returns rows, these rows are added to the DataSet.

Si applica a