SqlRowUpdatedEventArgs Класс

Определение

Предоставляет данные для события RowUpdated.Provides data for the RowUpdated event.

public ref class SqlRowUpdatedEventArgs sealed : System::Data::Common::RowUpdatedEventArgs
public sealed class SqlRowUpdatedEventArgs : System.Data.Common.RowUpdatedEventArgs
type SqlRowUpdatedEventArgs = class
    inherit RowUpdatedEventArgs
Public NotInheritable Class SqlRowUpdatedEventArgs
Inherits RowUpdatedEventArgs
Наследование
SqlRowUpdatedEventArgs

Примеры

В следующем примере показано, RowUpdating как использовать события и. RowUpdatedThe following example shows how to use both the RowUpdating and RowUpdated events.

RowUpdating Событие возвращает следующие выходные данные:The RowUpdating event returns this output:

Аргументы события: (команда = System. Data. SqlClient. SqlCommand commandType = 2 status = 0)Event Arguments: (command=System.Data.SqlClient.SqlCommand commandType=2 status=0)

RowUpdated Событие возвращает следующие выходные данные:The RowUpdated event returns this output:

Аргументы события: (команда = System. Data. SqlClient. SqlCommand commandType = 2 Рекордсаффектед = 1 Строка = System. Data. DataRow [37] status = 0)Event Arguments: (command=System.Data.SqlClient.SqlCommand commandType=2 recordsAffected=1 row=System.Data.DataRow[37] status=0)

   // handler for RowUpdating event
   private static void OnRowUpdating(object sender, SqlRowUpdatingEventArgs e) 
   {
       PrintEventArgs(e);
   }

   // handler for RowUpdated event
   private static void OnRowUpdated(object sender, SqlRowUpdatedEventArgs e) 
   {
       PrintEventArgs(e);
   }

   public static int Main() 
   {
       const string connectionString = 
                 "Integrated Security=SSPI;database=Northwind;server=MSSQL1";
       const string queryString = "SELECT * FROM Products";

       // create DataAdapter
       SqlDataAdapter adapter = new SqlDataAdapter(queryString, connectionString);
       SqlCommandBuilder builder = new SqlCommandBuilder(adapter);

       // Create and fill DataSet (select only first 5 rows)
       DataSet dataSet = new DataSet();
       adapter.Fill(dataSet, 0, 5, "Table");

       // Modify DataSet
       DataTable table = dataSet.Tables["Table"];
       table.Rows[0][1] = "new product";

       // add handlers
       adapter.RowUpdating += new SqlRowUpdatingEventHandler( OnRowUpdating );
       adapter.RowUpdated += new SqlRowUpdatedEventHandler( OnRowUpdated );

       // update, this operation fires two events 
       // (RowUpdating/RowUpdated) per changed row 
       adapter.Update(dataSet, "Table");

       // remove handlers
       adapter.RowUpdating -= new SqlRowUpdatingEventHandler( OnRowUpdating );
       adapter.RowUpdated -= new SqlRowUpdatedEventHandler( OnRowUpdated );
       return 0;
   }

   private static void PrintEventArgs(SqlRowUpdatingEventArgs args) 
   {
       Console.WriteLine("OnRowUpdating");
       Console.WriteLine("  event args: ("+
           " command=" + args.Command + 
           " commandType=" + args.StatementType + 
           " status=" + args.Status + ")");
   }

   private static void PrintEventArgs(SqlRowUpdatedEventArgs args) 
   {
       Console.WriteLine("OnRowUpdated");
       Console.WriteLine( "  event args: ("+
           " command=" + args.Command +
           " commandType=" + args.StatementType + 
           " recordsAffected=" + args.RecordsAffected + 
           " status=" + args.Status + ")");
   }
    ' handler for RowUpdating event
    Private Shared Sub OnRowUpdating(sender As Object, e As SqlRowUpdatingEventArgs)
        PrintEventArgs(e)
    End Sub 

    ' handler for RowUpdated event
    Private Shared Sub OnRowUpdated(sender As Object, e As SqlRowUpdatedEventArgs)
        PrintEventArgs(e)
    End Sub 
    
    'Entry point which delegates to C-style main Private Function
    Public Overloads Shared Sub Main()
        System.Environment.ExitCode = Main(System.Environment.GetCommandLineArgs())
    End Sub
    
    Overloads Public Shared Function Main(args() As String) As Integer
        Const connectionString As String = _
            "Integrated Security=SSPI;database=Northwind;server=MSSQL1"
        Const queryString As String = "SELECT * FROM Products"
        
        ' create DataAdapter
        Dim adapter As New SqlDataAdapter(queryString, connectionString)
        Dim builder As New SqlCommandBuilder(adapter)
        
        ' Create and fill DataSet (select only first 5 rows)
        Dim dataSet As New DataSet()
        adapter.Fill(dataSet, 0, 5, "Table")
        
        ' Modify DataSet
        Dim table As DataTable = dataSet.Tables("Table")
        table.Rows(0)(1) = "new product"
        
        ' add handlers
        AddHandler adapter.RowUpdating, AddressOf OnRowUpdating
        AddHandler adapter.RowUpdated, AddressOf OnRowUpdated
        
        ' update, this operation fires two events 
        '(RowUpdating/RowUpdated) per changed row 
        adapter.Update(dataSet, "Table")
        
        ' remove handlers
        RemoveHandler adapter.RowUpdating, AddressOf OnRowUpdating
        RemoveHandler adapter.RowUpdated, AddressOf OnRowUpdated
        Return 0
    End Function 
    
    
    Overloads Private Shared Sub PrintEventArgs(args As SqlRowUpdatingEventArgs)
        Console.WriteLine("OnRowUpdating")
        Console.WriteLine("  event args: (" & " command=" & args.Command.CommandText & _
           " commandType=" & args.StatementType & " status=" & args.Status & ")")
    End Sub 
    
    
    Overloads Private Shared Sub PrintEventArgs(args As SqlRowUpdatedEventArgs)
        Console.WriteLine("OnRowUpdated")
        Console.WriteLine("  event args: (" & " command=" & args.Command.CommandText & _
           " commandType=" & args.StatementType & " recordsAffected=" & _
           args.RecordsAffected & " status=" & args.Status & ")")
    End Sub 
End Class 

Комментарии

RowUpdated Событие возникает Update при завершении строки.The RowUpdated event is raised when an Update to a row is completed.

При использовании Updateсуществует два события, происходящих при обновлении каждой строки данных.When using Update, there are two events that occur for each data row updated. Порядок выполнения выглядит следующим образом:The order of execution is as follows:

  1. Значения в DataRow перемещаются в значения параметров.The values in the DataRow are moved to the parameter values.

  2. Возникает событие OnRowUpdating.The OnRowUpdating event is raised.

  3. Команда выполняется.The command executes.

  4. Если команда имеет значение FirstReturnedRecord, а первый возвращенный результат помещается DataRowв.If the command is set to FirstReturnedRecord, and the first returned result is placed in the DataRow.

  5. Если имеются выходные параметры, они помещаются в DataRow.If there are output parameters, they are placed in the DataRow.

  6. Возникает событие OnRowUpdated.The OnRowUpdated event is raised.

  7. Вызывается метод AcceptChanges.AcceptChanges is called.

Конструкторы

SqlRowUpdatedEventArgs(DataRow, IDbCommand, StatementType, DataTableMapping)

Инициализирует новый экземпляр класса SqlRowUpdatedEventArgs.Initializes a new instance of the SqlRowUpdatedEventArgs class.

Свойства

Command

Возвращает или задает SqlCommand, которая выполняется при вызове Update(DataSet).Gets or sets the SqlCommand executed when Update(DataSet) is called.

Errors

Получает ошибки, создаваемые поставщиком данных .NET Framework при выполнении свойства Command.Gets any errors generated by the .NET Framework data provider when the Command was executed.

(Унаследовано от RowUpdatedEventArgs)
RecordsAffected

Возвращает число строк, которые были изменены, вставлены или удалены инструкцией SQL.Gets the number of rows changed, inserted, or deleted by execution of the SQL statement.

(Унаследовано от RowUpdatedEventArgs)
Row

Получает объект DataRow, отправленный с помощью метода Update(DataSet).Gets the DataRow sent through an Update(DataSet).

(Унаследовано от RowUpdatedEventArgs)
RowCount

Получает количество строк, обработанных в пакете обновленных записей.Gets the number of rows processed in a batch of updated records.

(Унаследовано от RowUpdatedEventArgs)
StatementType

Получает тип исполняемого оператора SQL.Gets the type of SQL statement executed.

(Унаследовано от RowUpdatedEventArgs)
Status

Получает UpdateStatus свойства Command.Gets the UpdateStatus of the Command property.

(Унаследовано от RowUpdatedEventArgs)
TableMapping

Получает объект DataTableMapping, отправленный с помощью метода Update(DataSet).Gets the DataTableMapping sent through an Update(DataSet).

(Унаследовано от RowUpdatedEventArgs)

Методы

CopyToRows(DataRow[])

Копирует ссылки на измененные строки в предоставленный массив.Copies references to the modified rows into the provided array.

(Унаследовано от RowUpdatedEventArgs)
CopyToRows(DataRow[], Int32)

Копирует ссылки на измененные строки в предоставленный массив.Copies references to the modified rows into the provided array.

(Унаследовано от RowUpdatedEventArgs)
Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

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

Дополнительно