英語で読む

次の方法で共有


DataTable.GetChanges メソッド

定義

前回 DataTable を読み取るか、AcceptChanges() を呼び出した以降にこのデータセットに対して行われたすべての変更が格納されているこのデータセットのコピーを取得します。

オーバーロード

GetChanges()

前回 DataTable を読み取るか、AcceptChanges() を呼び出した以降にこのデータセットに対して行われたすべての変更が格納されているこのデータセットのコピーを取得します。

GetChanges(DataRowState)

前回 DataTable を読み取るか、AcceptChanges() を呼び出した以降にこのデータセットに対して行われたすべての変更が格納されているこのデータセットのコピーを、DataRowState によってフィルター処理した後で取得します。

GetChanges()

ソース:
DataTable.cs
ソース:
DataTable.cs
ソース:
DataTable.cs

前回 DataTable を読み取るか、AcceptChanges() を呼び出した以降にこのデータセットに対して行われたすべての変更が格納されているこのデータセットのコピーを取得します。

public System.Data.DataTable? GetChanges ();
public System.Data.DataTable GetChanges ();

戻り値

この DataTable からの変更のコピー。変更がない場合は null

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);
}

注釈

保留中の変更がある元DataSetのすべての行のコピーを含む新しい DataSet を作成します。 変更されていない行に、変更された行の外部キーに対応する主キーが含まれている場合、リレーションシップ制約によって変更されていない行が新しい DataSet 行に追加される可能性があります。 保留中の変更を含む元DataSetnull行がない場合、メソッドは (Nothing Visual Basic の場合) を返します。

こちらもご覧ください

適用対象

.NET 9 およびその他のバージョン
製品 バージョン
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

GetChanges(DataRowState)

ソース:
DataTable.cs
ソース:
DataTable.cs
ソース:
DataTable.cs

前回 DataTable を読み取るか、AcceptChanges() を呼び出した以降にこのデータセットに対して行われたすべての変更が格納されているこのデータセットのコピーを、DataRowState によってフィルター処理した後で取得します。

public System.Data.DataTable? GetChanges (System.Data.DataRowState rowStates);
public System.Data.DataTable GetChanges (System.Data.DataRowState rowStates);

パラメーター

rowStates
DataRowState

DataRowState 値のいずれか 1 つ。

戻り値

アクションを実行した後、DataTable を使用して元の DataTable にマージするために使用できる、Merge(DataSet) のフィルター処理後のコピー。 必要な DataRowState の行が見つからない場合、このメソッドは null を返します。

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);
}

注釈

メソッドは GetChanges 、元の に導入された変更のみを含む 2 番目 DataTable のオブジェクトを生成するために使用されます。 引数を rowStates 使用して、新しいオブジェクトに含める変更の種類を指定します。

リレーションシップの制約により、変更されていない親行が含まれる可能性があります。

こちらもご覧ください

適用対象

.NET 9 およびその他のバージョン
製品 バージョン
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1