Compartilhar via


IDbDataAdapter.UpdateCommand Propriedade

Definição

Obtém ou define uma instrução SQL usada para atualizar registros na fonte de dados.

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

Valor da propriedade

Um IDbCommand usado durante Update(DataSet) para atualizar registros na fonte de dados para linhas modificadas no conjunto de dados.

Exemplos

O exemplo a seguir cria uma instância da classe herdada OleDbDataAdapter e define as SelectCommand propriedades e UpdateCommand . Ele pressupõe que você já tenha criado um OleDbConnection objeto .

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 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

Comentários

Durante Update, se essa propriedade não estiver definida e as informações de chave primária estiverem presentes no DataSet, o UpdateCommand poderá ser gerado automaticamente se você definir a SelectCommand propriedade de um provedor de dados .NET Framework. Em seguida, todos os comandos adicionais que você não definir serão gerados pelo CommandBuilder. Esta lógica de geração requer que as informações da coluna principal estejam presente no DataSet. Para obter mais informações, consulte Gerando comandos com CommandBuilders.

Quando UpdateCommand é atribuído a um criado IDbCommandanteriormente, o IDbCommand não é clonado. O UpdateCommand mantém uma referência ao objeto criado IDbCommand anteriormente.

Observação

Se a execução desse comando retornar linhas, essas linhas serão adicionadas ao DataSet.

Aplica-se a