次の方法で共有


AcceptRejectRule 列挙体

ForeignKeyConstraint が設定されている DataTableAcceptChanges メソッドまたは RejectChanges メソッドを呼び出した場合に実行されるアクションを決定します。

<Serializable>
Public Enum AcceptRejectRule
[C#]
[Serializable]
public enum AcceptRejectRule
[C++]
[Serializable]
__value public enum AcceptRejectRule
[JScript]
public
   Serializable
enum AcceptRejectRule

解説

DataTable を変更した場合、 AcceptChanges メソッドを呼び出すまでは変更は最終的に有効になりません。親テーブル内の行で AcceptChanges または RejectChanges のいずれかを呼び出すと、 AcceptRejectRule 値によって、子テーブル内の対応する行に変更を反映するかどうかが決定されます。

メンバ

メンバ名 説明
Cascade

.NET Compact Framework でもサポート。

リレーションシップ全体に連鎖変更が行われます。
None

.NET Compact Framework でもサポート。

アクションは実行されません (既定値)。

使用例

[Visual Basic, C#, C++] ForeignKeyConstraint を作成し、 AcceptRejectRule を含む各種プロパティを設定し、この制約を DataTable オブジェクトの ConstraintCollection に追加する例を次に示します。

 
Private Sub CreateConstraint(myDataSet As DataSet, table1 As String, table2 As String, _
                                                   column1 As String, column2 As String)
   ' Declare parent column and child column variables.
   Dim parentColumn As DataColumn
   Dim childColumn As DataColumn
   Dim myForeignKeyConstraint As ForeignKeyConstraint
   ' Set parent and child column variables.
   parentColumn = MyDataSet.Tables(table1).Columns(column1)
   childColumn = MyDataSet.Tables(table2).Columns(column2)
   myForeignKeyConstraint = New ForeignKeyConstraint _
      ("SupplierForeignKeyConstraint", parentColumn, childColumn)
   ' Set null values when a value is deleted.
   myForeignKeyConstraint.DeleteRule = Rule.SetNull
   myForeignKeyConstraint.UpdateRule = Rule.Cascade
   myForeignKeyConstraint.AcceptRejectRule = AcceptRejectRule.Cascade
   ' Add the constraint, and set EnforceConstraints to true.
   myDataSet.Tables(table1).Constraints.Add(myForeignKeyConstraint)
   myDataSet.EnforceConstraints = True
End Sub

[C#] 
private void CreateConstraint(DataSet myDataSet, string table1, string table2,
                                                 string column1, string column2){
   // Declare parent column and child column variables.
   DataColumn parentColumn;
   DataColumn childColumn;
   ForeignKeyConstraint myForeignKeyConstraint;
   // Set parent and child column variables.
   parentColumn = myDataSet.Tables[table1].Columns[column1];
   childColumn = myDataSet.Tables[table2].Columns[column2];
   myForeignKeyConstraint = new ForeignKeyConstraint
      ("SupplierForeignKeyConstraint",  parentColumn, childColumn);
   // Set null values when a value is deleted.
   myForeignKeyConstraint.DeleteRule = Rule.SetNull;
   myForeignKeyConstraint.UpdateRule = Rule.Cascade;
   myForeignKeyConstraint.AcceptRejectRule = AcceptRejectRule.Cascade;
   // Add the constraint, and set EnforceConstraints to true.
   myDataSet.Tables[table1].Constraints.Add(myForeignKeyConstraint);
   myDataSet.EnforceConstraints = true;
}

[C++] 
private:
 void CreateConstraint(DataSet* myDataSet, String* table1, String* table2,
                                           String* column1, String* column2){
    // Declare parent column and child column variables.
    DataColumn* parentColumn;
    DataColumn* childColumn;
    ForeignKeyConstraint* myForeignKeyConstraint;
    // Set parent and child column variables.
    parentColumn = myDataSet->Tables->Item[table1]->Columns->Item[column1];
    childColumn = myDataSet->Tables->Item[table2]->Columns->Item[column2];
    myForeignKeyConstraint = new ForeignKeyConstraint
       (S"SupplierForeignKeyConstraint",  parentColumn, childColumn);
    // Set null values when a value is deleted.
    myForeignKeyConstraint->DeleteRule = Rule::SetNull;
    myForeignKeyConstraint->UpdateRule = Rule::Cascade;
    myForeignKeyConstraint->AcceptRejectRule = AcceptRejectRule::Cascade;
    // Add the constraint, and set EnforceConstraints to true.
    myDataSet->Tables->Item[table1]->Constraints->Add(myForeignKeyConstraint);
    myDataSet->EnforceConstraints = true;
 }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Data

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

アセンブリ: System.Data (System.Data.dll 内)

参照

System.Data 名前空間 | DataTable | UniqueConstraint | ForeignKeyConstraint | AcceptRejectRule