DataTable.Constraints 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得這個資料表所維護的條件約束 (Constraint) 集合。
public:
property System::Data::ConstraintCollection ^ Constraints { System::Data::ConstraintCollection ^ get(); };
public System.Data.ConstraintCollection Constraints { get; }
[System.Data.DataSysDescription("DataTableConstraintsDescr")]
public System.Data.ConstraintCollection Constraints { get; }
member this.Constraints : System.Data.ConstraintCollection
[<System.Data.DataSysDescription("DataTableConstraintsDescr")>]
member this.Constraints : System.Data.ConstraintCollection
Public ReadOnly Property Constraints As ConstraintCollection
屬性值
ConstraintCollection,其中包含資料表的 Constraint 物件集合。 如果沒有任何 Constraint 物件存在,則會傳回空的集合。
- 屬性
範例
下列範例會將 加入 ForeignKeyConstraint 條件約束的集合。
private void CreateConstraint(DataSet dataSet,
string table1, string table2, string column1, string column2)
{
ForeignKeyConstraint idKeyRestraint = new
ForeignKeyConstraint(dataSet.Tables[table1].Columns[column1],
dataSet.Tables[table2].Columns[column2]);
// Set null values when a value is deleted.
idKeyRestraint.DeleteRule = Rule.SetNull;
idKeyRestraint.UpdateRule = Rule.Cascade;
// Set AcceptRejectRule to cascade changes.
idKeyRestraint.AcceptRejectRule = AcceptRejectRule.Cascade;
dataSet.Tables[table1].Constraints.Add(idKeyRestraint);
dataSet.EnforceConstraints = true;
}
Private Sub CreateConstraint(dataSet As DataSet, _
table1 As String, table2 As String, _
column1 As String, column2 As String)
Dim idKeyRestraint As ForeignKeyConstraint = _
New ForeignKeyConstraint _
(dataSet.Tables(table1).Columns(column1), _
dataSet.Tables(table2).Columns(column2))
' Set null values when a value is deleted.
idKeyRestraint.DeleteRule = Rule.SetNull
idKeyRestraint.UpdateRule = Rule.Cascade
' Set AcceptRejectRule to cascade changes.
idKeyRestraint.AcceptRejectRule = AcceptRejectRule.Cascade
dataSet.Tables(table1).Constraints.Add(idKeyRestraint)
dataSet.EnforceConstraints = True
End Sub
備註
ForeignKeyConstraint會限制刪除或更新數據行 (或數據行) 中的值時所執行的動作。 這類條件約束旨在與主鍵數據行搭配使用。 在兩個數據表之間的父子關聯性中,從父數據表刪除值可能會影響子數據列,方式如下之一。
子數據列也可以刪除 (級聯動作) 。
子數據行中的值 (或數據行) 可以設定為 Null 值。
子數據行中的值 (或數據行) 可以設定為預設值。
可以產生例外狀況。
UniqueConstraint嘗試將主鍵中的值設定為非唯一值時,會變成作用中。