Прочитать на английском

Поделиться через


IDbDataAdapter.UpdateCommand Свойство

Определение

Возвращает или задает оператор SQL для обновления записей в источнике данных.

public System.Data.IDbCommand? UpdateCommand { get; set; }
public System.Data.IDbCommand UpdateCommand { get; set; }

Значение свойства

Интерфейс IDbCommand, используемый во время применения метода Update(DataSet) для обновления записей в источнике данных, соответствующих измененным строкам в наборе данных.

Примеры

В следующем примере создается экземпляр наследуемого OleDbDataAdapter класса и задаются SelectCommand свойства и UpdateCommand . Предполагается, что вы уже создали 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;
}

Комментарии

Если Updateэто свойство не задано, а сведения о первичном ключе присутствуют в DataSet, UpdateCommand можно создать автоматически, если задано SelectCommand свойство поставщика данных платформа .NET Framework. Затем все дополнительные команды, которые не заданы, создаются CommandBuilder. Для этой логики создания требуется, чтобы сведения о ключевом столбце присутствовали DataSetв . Дополнительные сведения см. в разделе Создание команд с помощью CommandBuilders.

При UpdateCommand назначении ранее созданному IDbCommandобъекту IDbCommand не клонируется. объект UpdateCommand сохраняет ссылку на ранее созданный IDbCommand объект .

Примечание

Если выполнение этой команды возвращает строки, эти строки добавляются в DataSet.

Применяется к

Продукт Версии
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1