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; }
member this.UpdateCommand : System.Data.IDbCommand with get, set
Public Property UpdateCommand As IDbCommand

Valor da propriedade

Um IDbCommand usado durante Update(DataSet) a atualização de 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 o e SelectCommand as UpdateCommand propriedades. 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, elas UpdateCommand poderão ser geradas automaticamente se você definir a SelectCommand propriedade de um provedor de dados do .NET Framework. Em seguida, todos os comandos adicionais que você não definir são gerados pelo CommandBuilder. Essa lógica de geração requer que as informações da coluna de chave estejam presentes no DataSet. Para obter mais informações, consulte Gerando comandos com CommandBuilders.

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

Note

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

Aplica-se a