OleDbDataAdapter.UpdateCommand Właściwość

Definicja

Pobiera lub ustawia instrukcję SQL lub procedurę składowaną używaną do aktualizowania rekordów w źródle danych.

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; }
public System.Data.OleDb.OleDbCommand? UpdateCommand { get; set; }
[System.Data.DataSysDescription("DbDataAdapter_UpdateCommand")]
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

Wartość właściwości

Używany OleDbCommand podczas Update(DataSet) aktualizowania rekordów w źródle danych, które odpowiadają zmodyfikowanym wierszom w obiekcie DataSet.

Atrybuty

Przykłady

Poniższy przykład tworzy element OleDbDataAdapter i ustawia SelectCommand właściwości i UpdateCommand . Przyjęto założenie, że obiekt został już utworzony OleDbConnection .

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

Uwagi

Jeśli Updateta właściwość nie jest ustawiona, a informacje o kluczu podstawowym znajdują się w elemecie DataSet, UpdateCommand można je wygenerować automatycznie, jeśli właściwość zostanie ustawiona SelectCommand i użyj polecenia OleDbCommandBuilder. Następnie wszystkie dodatkowe polecenia, które nie zostały ustawione, są generowane przez OleDbCommandBuilderelement . Ta logika generowania wymaga, aby informacje o kolumnie klucza znajdują się w elemecie DataSet. Aby uzyskać więcej informacji, zobacz Generowanie poleceń za pomocą poleceń CommandBuilders.

Po UpdateCommand przypisaniu do utworzonego wcześniej elementu OleDbCommandelement OleDbCommand nie jest klonowany. Obiekt UpdateCommand zachowuje odwołanie do wcześniej utworzonego OleDbCommand obiektu.

Uwaga

Jeśli wykonanie tego polecenia zwraca wiersze, te wiersze mogą być scalane z DataSet zależnie od sposobu ustawiania UpdatedRowSource właściwości OleDbCommand obiektu.

Dotyczy