Como: Recuperar linhas alteradas

Cada linha em um tabela de dados tem uma propriedade RowState que mantém registro do estado atual dessa linha usando os valores na enumeração DataRowState.Você pode retornar linhas alteradas de um DataSet ou tabela de dados chamando o método GetChanges de um DataSet ou DataTable.Você pode verificar se existem alterações antes de chamar GetChanges chamando o método HasChanges de um DataSet.Para obter mais informações sobre HasChanges, consulte: Como: Verificar se há linhas alteradas.

Observação:

Após você confirmar alterações a uma dataset ou tabela de dados (chamando o AcceptChanges método), o GetChanges método não retornará nenhum dado. Se seu aplicativo precisar processar linhas alteradas, você deve fazê-lo antes de chamar o método AcceptChanges.

Chamar o método GetChanges de um dataset ou tabela de dados retorna um novo dataset ou tabela de dados que contém somente registros que foram alterados.Se você quiser obter somente registros específicos — por exemplo, apenas os novos registros ou apenas registros modificados — você pode passar um valor da enumeração DataRowState como um parâmetro para o método GetChanges.

Use a enumeração DataRowVersion para acessar as versões diferentes de uma linha (por exemplo, você pode desejar examinar os valores originais em uma linha antes processá-la).

Para obter todos os registros alterados de um dataset

  • Chame o método GetChanges de um DataSet.

    O exemplo a seguir cria um novo dataset chamado changedRecords e o preenche com todos os registros alterados do outro dataset chamadodataSet1.

    Dim changedRecords As DataSet = DataSet1.GetChanges()
    
    DataSet changedRecords = dataSet1.GetChanges();
    

Para obter todos os registros alterados de uma tabela de dados

  • Chame o método GetChanges de uma tabela de dados.

    O exemplo a seguir cria uma nova tabela de dados chamada changedRecordsTable e a preenche com todos os registros alterados de outra tabela de dados chamada dataTable1.

    Dim changedRecordsTable As DataTable = dataTable1.GetChanges()
    
    DataTable changedRecordsTable = dataTable1.GetChanges();
    

Para obter todos os registros que têm um estado de linha específico

  • Chame o método GetChanges de um DataSet ou tabela de dados e passe um valor de enumeração DataRowState como um argumento.

    O exemplo a seguir mostra como criar um novo dataset chamadoaddedRecords e preenchê-lo somente com registros que tenham sido adicionados ao dataset dataSet1.

    Dim addedRecords As DataSet = DataSet1.GetChanges(DataRowState.Added)
    
    DataSet addedRecords = dataSet1.GetChanges(DataRowState.Added);
    
  • O exemplo a seguir mostra como retornar todos os registros recentemente adicionados à tabela Customers:

    Private Function GetNewRecords() As NorthwindDataSet.CustomersDataTable
    
        Return CType(NorthwindDataSet1.Customers.GetChanges(Data.DataRowState.Added), _
            NorthwindDataSet.CustomersDataTable)
    End Function
    
    private NorthwindDataSet.CustomersDataTable GetNewRecords()
    {
        return (NorthwindDataSet.CustomersDataTable)
            northwindDataSet1.Customers.GetChanges(DataRowState.Added);
    }
    

Consulte também

Tarefas

Como: Verificar se há linhas alteradas

Como: Obter Specific Versions of a DataRow

Conceitos

Exibindo visão geral de dados

Outros recursos

Conectando-se a Dados no Visual Studio

Preparando seu aplicativo para receber dados

Buscando dados em seu aplicativo

Exibindo dados em formulários em aplicativos do Windows

Editar dados no seu aplicativo

Validando Dados

Salvando dados