OleDbDataAdapter.DeleteCommand Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает оператор SQL или хранимую процедуру для удаления записей из набора данных.
public:
property System::Data::OleDb::OleDbCommand ^ DeleteCommand { System::Data::OleDb::OleDbCommand ^ get(); void set(System::Data::OleDb::OleDbCommand ^ value); };
public System.Data.OleDb.OleDbCommand? DeleteCommand { get; set; }
[System.Data.DataSysDescription("DbDataAdapter_DeleteCommand")]
public System.Data.OleDb.OleDbCommand DeleteCommand { get; set; }
public System.Data.OleDb.OleDbCommand DeleteCommand { get; set; }
member this.DeleteCommand : System.Data.OleDb.OleDbCommand with get, set
[<System.Data.DataSysDescription("DbDataAdapter_DeleteCommand")>]
member this.DeleteCommand : System.Data.OleDb.OleDbCommand with get, set
Public Property DeleteCommand As OleDbCommand
Значение свойства
Команда OleDbCommand, используемая в ходе обновления Update(DataSet) для удаления из источника данных записей, соответствующих удаленным строкам в наборе DataSet.
- Атрибуты
Примеры
В следующем примере создается OleDbDataAdapter и задаются SelectCommand свойства и DeleteCommand . Предполагается, что объект уже создан OleDbConnection .
public static OleDbDataAdapter CreateCustomerAdapter(
OleDbConnection connection)
{
OleDbDataAdapter dataAdapter = new OleDbDataAdapter();
OleDbCommand command;
OleDbParameter parameter;
// Create the SelectCommand.
command = new OleDbCommand("SELECT CustomerID FROM 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 DeleteCommand.
command = new OleDbCommand(
"DELETE * FROM Customers WHERE CustomerID = ?",
connection);
parameter = command.Parameters.Add(
"CustomerID", OleDbType.Char, 5, "CustomerID");
parameter.SourceVersion = DataRowVersion.Original;
dataAdapter.DeleteCommand = command;
return dataAdapter;
}
Public Shared Function CreateCustomerAdapter( _
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 CustomerID FROM 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 DeleteCommand.
command = New OleDbCommand( _
"DELETE * FROM Customers WHERE CustomerID = ?", _
connection)
parameter = command.Parameters.Add( _
"CustomerID", OleDbType.Char, 5, "CustomerID")
parameter.SourceVersion = DataRowVersion.Original
dataAdapter.DeleteCommand = command
Return dataAdapter
End Function
Комментарии
В Updateсреде , если это свойство не задано и сведения о первичном ключе присутствуют в DataSet, DeleteCommand можно создать автоматически, если вы задали SelectCommand свойство и используете OleDbCommandBuilder. Затем все дополнительные команды, которые не заданы, создаются с помощью OleDbCommandBuilder. Для этой логики создания требуется, чтобы сведения о ключевом столбце присутствовали DataSetв . Дополнительные сведения см. в статье Создание команд с помощью классов CommandBuilder.
При DeleteCommand назначении ранее созданному OleDbCommandобъекту OleDbCommand не клонируется. объект DeleteCommand сохраняет ссылку на ранее созданный OleDbCommand объект .