OleDbDataAdapter.UpdateCommand Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define uma instrução SQL ou um procedimento armazenado usado para atualizar registros na fonte de dados.
public:
property System::Data::OleDb::OleDbCommand ^ UpdateCommand { System::Data::OleDb::OleDbCommand ^ get(); void set(System::Data::OleDb::OleDbCommand ^ value); };
public System.Data.OleDb.OleDbCommand? UpdateCommand { get; set; }
[System.Data.DataSysDescription("DbDataAdapter_UpdateCommand")]
public System.Data.OleDb.OleDbCommand UpdateCommand { get; set; }
public System.Data.OleDb.OleDbCommand UpdateCommand { get; set; }
member this.UpdateCommand : System.Data.OleDb.OleDbCommand with get, set
[<System.Data.DataSysDescription("DbDataAdapter_UpdateCommand")>]
member this.UpdateCommand : System.Data.OleDb.OleDbCommand with get, set
Public Property UpdateCommand As OleDbCommand
Valor da propriedade
Um OleDbCommand usado durante Update(DataSet) para atualizar registros na fonte de dados que correspondem a linhas modificadas no DataSet.
- Atributos
Exemplos
O exemplo a seguir cria um 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 e usar o OleDbCommandBuilder. Em seguida, todos os comandos adicionais que você não definir são gerados pelo OleDbCommandBuilder. Esta lógica de geração requer que as informações da coluna principal estejam presente no DataSet. Para obter mais informações, confira Gerar comandos com CommandBuilders.
Quando UpdateCommand é atribuído a um criado OleDbCommandanteriormente, o OleDbCommand não é clonado. O UpdateCommand mantém uma referência ao objeto criado OleDbCommand anteriormente.
Observação
Se a execução desse comando retornar linhas, essas linhas poderão ser mescladas com a DataSet dependendo de como você definir a UpdatedRowSource propriedade do OleDbCommand objeto.