Редактиране

Споделяне чрез


OracleRowUpdatedEventArgs Class

Definition

Provides data for the RowUpdated event. This class cannot be inherited.

public ref class OracleRowUpdatedEventArgs sealed : System::Data::Common::RowUpdatedEventArgs
public sealed class OracleRowUpdatedEventArgs : System.Data.Common.RowUpdatedEventArgs
type OracleRowUpdatedEventArgs = class
    inherit RowUpdatedEventArgs
Public NotInheritable Class OracleRowUpdatedEventArgs
Inherits RowUpdatedEventArgs
Inheritance
OracleRowUpdatedEventArgs

Examples

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

The RowUpdating event returns this output:

Event Arguments: (command=OracleCommand commandType=2status=0)

The RowUpdated event returns this output:

Event Arguments: (command= OracleCommend commandType=2 recordsAffected=1 row=System.Data.DataRow[37] status=0)

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

 //Handler for RowUpdated event.
 private static void OnRowUpdated(object sender, OracleRowUpdatedEventArgs e) {
    PrintEventArgs(e);
 }

 public static int Main(String[] args) {
    const string CONNECTION_STRING = "Data Source=Oracle8i;Integrated Security=yes";
    const string SELECT_ALL = "SELECT * FROM Scott.Emp";

    //Create DataAdapter.
    OracleDataAdapter rAdapter = new OracleDataAdapter(SELECT_ALL, CONNECTION_STRING);
    OracleCommandBuilder cb = new OracleCommandBuilder(rAdapter);

    //Create and fill DataSet (Select only first 5 rows.).
    DataSet rDataSet = new DataSet();
    rAdapter.Fill(rDataSet, 0, 5, "Table");

    //Modify DataSet.
    DataTable rTable = rDataSet.Tables["Table"];
    rTable.Rows[0][1] = "DYZY";

    //Add handlers.
    rAdapter.RowUpdating += new OracleRowUpdatingEventHandler( OnRowUpdating );
    rAdapter.RowUpdated += new OracleRowUpdatedEventHandler( OnRowUpdated );

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

    //Remove handlers.
    rAdapter.RowUpdating -= new OracleRowUpdatingEventHandler( OnRowUpdating );
    rAdapter.RowUpdated -= new OracleRowUpdatedEventHandler( OnRowUpdated );
    return 0;
 }

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

 private static void PrintEventArgs(OracleRowUpdatedEventArgs 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 OracleRowUpdatingEventArgs)
        PrintEventArgs(e)
    End Sub

    'Handler for RowUpdated event.
    Private Shared Sub OnRowUpdated(sender As Object, e As OracleRowUpdatedEventArgs)
        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 = "Data Source=Oracle8i;Integrated Security=yes"
        Const SELECT_ALL As String = "SELECT * FROM Scott.Emp"
        
        'Create DataAdapter.
        Dim rAdapter As New OracleDataAdapter(SELECT_ALL, CONNECTION_STRING)
        Dim cb As New OracleCommandBuilder(rAdapter)
        
        '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) = "DYZY"
        
        '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 'Main
    
    
    Overloads Private Shared Sub PrintEventArgs(args As OracleRowUpdatingEventArgs)
        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 OracleRowUpdatedEventArgs)
        Console.WriteLine("OnRowUpdated")
        Console.WriteLine("  event args: (" & " command=" & args.Command.CommandText & _
                        " commandType=" & args.StatementType & " recordsAffected=" & _
                        args.RecordsAffected & " status=" & args.Status & ")")
    End Sub
End Class

Remarks

The RowUpdated event is raised when an Update to a row is completed.

When 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, 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.

Constructors

OracleRowUpdatedEventArgs(DataRow, IDbCommand, StatementType, DataTableMapping)

Initializes a new instance of the OracleRowUpdatedEventArgs class.

Properties

Command

Gets or sets the OracleCommand executed when Update(DataSet) is called.

Errors

Gets any errors generated by the .NET data provider when the Command was executed.

(Inherited from RowUpdatedEventArgs)
RecordsAffected

Gets the number of rows changed, inserted, or deleted by execution of the SQL statement.

(Inherited from RowUpdatedEventArgs)
Row

Gets the DataRow sent through an Update(DataSet).

(Inherited from RowUpdatedEventArgs)
RowCount

Gets the number of rows processed in a batch of updated records.

(Inherited from RowUpdatedEventArgs)
StatementType

Gets the type of SQL statement executed.

(Inherited from RowUpdatedEventArgs)
Status

Gets the UpdateStatus of the Command property.

(Inherited from RowUpdatedEventArgs)
TableMapping

Gets the DataTableMapping sent through an Update(DataSet).

(Inherited from RowUpdatedEventArgs)

Methods

CopyToRows(DataRow[], Int32)

Copies references to the modified rows into the provided array.

(Inherited from RowUpdatedEventArgs)
CopyToRows(DataRow[])

Copies references to the modified rows into the provided array.

(Inherited from RowUpdatedEventArgs)
Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ToString()

Returns a string that represents the current object.

(Inherited from Object)

Applies to