Export (0) Print
Expand All

SqlRowUpdatingEventArgs Class

Provides data for the RowUpdating event.

System.Object
  System.EventArgs
    System.Data.Common.RowUpdatingEventArgs
      System.Data.SqlClient.SqlRowUpdatingEventArgs

Namespace:  System.Data.SqlClient
Assembly:  System.Data (in System.Data.dll)

'Declaration
Public NotInheritable Class SqlRowUpdatingEventArgs _
	Inherits RowUpdatingEventArgs

The SqlRowUpdatingEventArgs type exposes the following members.

  NameDescription
Public methodSqlRowUpdatingEventArgsInitializes a new instance of the SqlRowUpdatingEventArgs class.
Top

  NameDescription
Public propertyCommandGets or sets the SqlCommand to execute when performing the Update.
Public propertyErrorsGets any errors generated by the .NET Framework data provider when the Command executes. (Inherited from RowUpdatingEventArgs.)
Public propertyRowGets the DataRow that will be sent to the server as part of an insert, update, or delete operation. (Inherited from RowUpdatingEventArgs.)
Public propertyStatementTypeGets the type of SQL statement to execute. (Inherited from RowUpdatingEventArgs.)
Public propertyStatusGets or sets the UpdateStatus of the Command property. (Inherited from RowUpdatingEventArgs.)
Public propertyTableMappingGets the DataTableMapping to send through the Update. (Inherited from RowUpdatingEventArgs.)
Top

  NameDescription
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

The RowUpdating event is raised before an Update to a row.

When you are using Update, there are two events that occur for each data row updated. The order of execution is as follows:

  1. The values in the DataRow are moved to the parameter values.

  2. The OnRowUpdating event is raised.

  3. The command executes.

  4. If the command is set to FirstReturnedRecord, and the first returned result is placed in the DataRow.

  5. If there are output parameters, they are placed in the DataRow.

  6. The OnRowUpdated event is raised.

  7. AcceptChanges is called.

The following example shows how to use both the RowUpdating and RowUpdated events.

The RowUpdating event returns this output:

event args: (command=System.Data.SqlClient.SQLCommand commandType=2 status=0)

The RowUpdated event returns this output:

event args: (command=System.Data.SqlClient.SQLCommand commandType=2 recordsAffected=1 row=System.Data.DataRow[37] status=0)

'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 CONNECTION_STRING As String = "Persist Security Info=False;Integrated Security=SSPI;database=northwind;server=mySQLServer" 
    Const SELECT_ALL As String = "select * from Products" 

    'Create DataAdapter. 
    Dim rAdapter As New SqlDataAdapter(SELECT_ALL, CONNECTION_STRING)

    'Create and fill DataSet (Select only first 5 rows.). 
    Dim rDataSet As New DataSet()
    rAdapter.Fill(rDataSet, 0, 5, "Table")

    'Modify DataSet. 
    Dim rTable As DataTable = rDataSet.Tables("Table")
    rTable.Rows(0)(1) = "new product" 

    'Add handlers. 
    AddHandler rAdapter.RowUpdating, AddressOf OnRowUpdating
    AddHandler rAdapter.RowUpdated, AddressOf OnRowUpdated

    'Update--this operation fires two events (RowUpdating and RowUpdated) for each changed row. 
    rAdapter.Update(rDataSet, "Table")

    'Remove handlers. 
    RemoveHandler rAdapter.RowUpdating, AddressOf OnRowUpdating
    RemoveHandler rAdapter.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

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show:
© 2014 Microsoft