SqlRowUpdatedEventArgs Classe

Definição

Fornece dados para o evento de RowUpdated .

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
Herança
SqlRowUpdatedEventArgs

Exemplos

O exemplo a seguir mostra como usar os RowUpdating eventos e RowUpdated .

O RowUpdating evento retorna esta saída:

Argumentos de evento: (command=System.Data.SqlClient.SqlCommand commandType=2 status=0)

O RowUpdated evento retorna esta saída:

Argumentos de evento: (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

Comentários

O RowUpdated evento é gerado quando um Update para uma linha é concluído.

Ao usar Update, há dois eventos que ocorrem para cada linha de dados atualizada. A ordem de execução é a seguinte:

  1. Os valores no DataRow são movidos para os valores de parâmetro.

  2. O evento OnRowUpdating será gerado.

  3. O comando é executado.

  4. Se o comando estiver definido como FirstReturnedRecorde o primeiro resultado retornado for colocado no DataRow.

  5. Se houver parâmetros de saída, eles serão colocados no DataRow.

  6. O evento OnRowUpdated será gerado.

  7. AcceptChanges é chamado.

Construtores

SqlRowUpdatedEventArgs(DataRow, IDbCommand, StatementType, DataTableMapping)

Inicializa uma nova instância da classe SqlRowUpdatedEventArgs.

Propriedades

Command

Obtém ou define o SqlCommand executado quando Update(DataSet) é chamado.

Errors

Obtém erros gerados pelo provedor de dados .NET quando o Command foi executado.

(Herdado de RowUpdatedEventArgs)
RecordsAffected

Obtém o número de linhas alteradas, inseridas ou excluídas pela execução da instrução SQL.

(Herdado de RowUpdatedEventArgs)
Row

Obtém o DataRow enviado por meio de um Update(DataSet).

(Herdado de RowUpdatedEventArgs)
RowCount

Obtém o número de linhas processadas em um lote de registros atualizados.

(Herdado de RowUpdatedEventArgs)
StatementType

Obtém o tipo de instrução SQL executada.

(Herdado de RowUpdatedEventArgs)
Status

Obtém o UpdateStatus da propriedade Command.

(Herdado de RowUpdatedEventArgs)
TableMapping

Obtém o DataTableMapping enviado por meio de um Update(DataSet).

(Herdado de RowUpdatedEventArgs)

Métodos

CopyToRows(DataRow[], Int32)

Cópia as referências às linhas modificadas para a matriz fornecida.

(Herdado de RowUpdatedEventArgs)
CopyToRows(DataRow[])

Cópia as referências às linhas modificadas para a matriz fornecida.

(Herdado de RowUpdatedEventArgs)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Confira também