DataTable.Constraints 属性

获取由该表维护的约束的集合。

**命名空间:**System.Data
**程序集:**System.Data(在 system.data.dll 中)

语法

声明
Public ReadOnly Property Constraints As ConstraintCollection
用法
Dim instance As DataTable
Dim value As ConstraintCollection

value = instance.Constraints
public ConstraintCollection Constraints { get; }
public:
property ConstraintCollection^ Constraints {
    ConstraintCollection^ get ();
}
/** @property */
public ConstraintCollection get_Constraints ()
public function get Constraints () : ConstraintCollection

属性值

一个 ConstraintCollection,包含该表的 Constraint 对象的集合。如果 Constraint 对象不存在,将返回空集合。

备注

ForeignKeyConstraint 限制在删除或更新一列(或多列)的值时所执行的操作。这种约束旨在用于主键列。在两个表的父/子关系中,从父表删除一个值可能会以下列方式之一影响子行。

  • 可能会同时删除子行(级联操作)。

  • 可能会将子列中的值设置为空值。

  • 可能会将子列中的值设置为默认值。

  • 可能生成异常。

UniqueConstraint 在尝试将主键中的值设置为非唯一值时激活。

示例

下面的示例将 ForeignKeyConstraint 添加到约束的集合中。

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

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

DataTable 类
DataTable 成员
System.Data 命名空间

其他资源

创建和使用 DataTables