DataTable.GetChanges Metoda

Definicja

Pobiera kopię DataTable zawierającą wszystkie zmiany wprowadzone do niego od momentu ostatniego załadowania lub od momentu AcceptChanges() wywołania.Gets a copy of the DataTable containing all changes made to it since it was last loaded, or since AcceptChanges() was called.

Przeciążenia

GetChanges()

Pobiera kopię zawierającą DataTable wszystkie zmiany dokonane od momentu załadowania lub AcceptChanges() ostatniego wywołania.Gets a copy of the DataTable that contains all changes made to it since it was loaded or AcceptChanges() was last called.

GetChanges(DataRowState)

Pobiera kopię DataTable zawierającą wszystkie zmiany wprowadzone do niego od momentu ostatniego załadowania lub od momentu AcceptChanges() wywołania, przefiltrowany przez DataRowState .Gets a copy of the DataTable containing all changes made to it since it was last loaded, or since AcceptChanges() was called, filtered by DataRowState.

GetChanges()

Pobiera kopię zawierającą DataTable wszystkie zmiany dokonane od momentu załadowania lub AcceptChanges() ostatniego wywołania.Gets a copy of the DataTable that contains all changes made to it since it was loaded or AcceptChanges() was last called.

public:
 System::Data::DataTable ^ GetChanges();
public System.Data.DataTable? GetChanges ();
public System.Data.DataTable GetChanges ();
member this.GetChanges : unit -> System.Data.DataTable
Public Function GetChanges () As DataTable

Zwraca

DataTable

Kopia zmian z tego elementu DataTable lub null Jeśli nie zostaną znalezione żadne zmiany.A copy of the changes from this DataTable, or null if no changes are found.

Przykłady

private void UpdateDataTable(DataTable table,
    OleDbDataAdapter myDataAdapter)
{
    DataTable xDataTable = table.GetChanges();

    // Check the DataTable for errors.
    if (xDataTable.HasErrors)
    {
        // Insert code to resolve errors.
    }

    // After fixing errors, update the database with the DataAdapter
    myDataAdapter.Update(xDataTable);
}
Private Sub UpdateDataTable(table As DataTable, _
    myDataAdapter As OleDbDataAdapter)

    Dim xDataTable As DataTable = table.GetChanges()

    ' Check the DataTable for errors.
    If xDataTable.HasErrors Then
        ' Insert code to resolve errors.
    End If

    ' After fixing errors, update the database with the DataAdapter 
    myDataAdapter.Update(xDataTable)
End Sub

Uwagi

Tworzy nowy DataSet zawierający kopię wszystkich wierszy w oryginalnym DataSet , która ma oczekujące zmiany.Creates a new DataSet containing a copy of all rows in the original DataSet that have pending changes. Ograniczenia relacji mogą spowodować dodanie dodatkowych niezmienionych wierszy do nowego, DataSet Jeśli niezmienione wiersze zawierają klucze podstawowe odpowiadające kluczom obcym w zmienionych wierszach.Relationship constraints can cause additional unchanged rows to be added to the new DataSet if the unchanged rows contain primary keys corresponding to foreign keys in the changed rows. Metoda zwraca null ( Nothing w Visual Basic), jeśli nie ma wierszy w oryginalnym DataSet z oczekującymi zmianami.The method returns null (Nothing in Visual Basic) if there are no rows in the original DataSet with pending changes.

Dotyczy

GetChanges(DataRowState)

Pobiera kopię DataTable zawierającą wszystkie zmiany wprowadzone do niego od momentu ostatniego załadowania lub od momentu AcceptChanges() wywołania, przefiltrowany przez DataRowState .Gets a copy of the DataTable containing all changes made to it since it was last loaded, or since AcceptChanges() was called, filtered by DataRowState.

public:
 System::Data::DataTable ^ GetChanges(System::Data::DataRowState rowStates);
public System.Data.DataTable? GetChanges (System.Data.DataRowState rowStates);
public System.Data.DataTable GetChanges (System.Data.DataRowState rowStates);
member this.GetChanges : System.Data.DataRowState -> System.Data.DataTable
Public Function GetChanges (rowStates As DataRowState) As DataTable

Parametry

rowStates
DataRowState

Jedna z DataRowState wartości.One of the DataRowState values.

Zwraca

DataTable

Odfiltrowana kopia, DataTable która może mieć wykonane akcje na nim i później zostanie scalona z powrotem DataTable przy użyciu Merge(DataSet) .A filtered copy of the DataTable that can have actions performed on it, and later be merged back in the DataTable using Merge(DataSet). Jeśli nie zostaną znalezione żadne wiersze żądane DataRowState , metoda zwraca null .If no rows of the desired DataRowState are found, the method returns null.

Przykłady

private void ProcessDeletes(DataTable table,
    OleDbDataAdapter adapter)
{
    DataTable changeTable = table.GetChanges(DataRowState.Deleted);

    // Check the DataTable for errors.
    if (changeTable.HasErrors)
    {
        // Insert code to resolve errors.
    }

    // After fixing errors, update the database with the DataAdapter
    adapter.Update(changeTable);
}
Private Sub ProcessDeletes(table As DataTable, _
    adapter As OleDbDataAdapter)

   Dim changeTable As DataTable = table.GetChanges(DataRowState.Deleted)

   ' Check the DataTable for errors.
   If table.HasErrors Then
      ' Insert code to resolve errors.
   End If

   ' After fixing errors, update the database with the DataAdapter 
   adapter.Update(changeTable)
End Sub

Uwagi

GetChangesMetoda jest używana do tworzenia drugiego DataTable obiektu, który zawiera tylko zmiany wprowadzone do oryginału.The GetChanges method is used to produce a second DataTable object that contains only the changes introduced into the original. Użyj rowStates argumentu, aby określić typ zmian, jakie powinien zawierać nowy obiekt.Use the rowStates argument to specify the type of changes the new object should include.

Ograniczenia relacji mogą spowodować uwzględnienie niezmienionych wierszy nadrzędnych.Relationship constraints may cause unchanged parent rows to be included.

Dotyczy