ForeignKeyConstraint.DeleteRule 属性

获取或设置当删除某一行时通过该约束发生的操作。

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

语法

声明
Public Overridable Property DeleteRule As Rule
用法
Dim instance As ForeignKeyConstraint
Dim value As Rule

value = instance.DeleteRule

instance.DeleteRule = value
public virtual Rule DeleteRule { get; set; }
public:
virtual property Rule DeleteRule {
    Rule get ();
    void set (Rule value);
}
/** @property */
public Rule get_DeleteRule ()

/** @property */
public void set_DeleteRule (Rule value)
public function get DeleteRule () : Rule

public function set DeleteRule (value : Rule)

属性值

Rule 值之一。默认为 Cascade

备注

当从某父表删除某一行时,DeleteRule 决定了该子表(或若干子表)中的列所发生的变化。如果将规则设置为 Cascade,就会删除子行。

如果设置为 SetNull,就会将 DBnull 置于受影响的行的相应列中。列中可以允许或不允许使用空值,视数据源而定。例如,SQLServer 允许在主键列中找到多个空值,即使这些值不是唯一的。但是,在 DataTable 中,如果将 DataColumn 对象的 Unique 属性设置为 true,则在主键列中不允许使用多个空值。

如果设置为 SetDefault,则给列分配默认值。

示例

下面的示例创建 ForeignKeyConstraint,设置它的各种属性,并将其添加到 DataTable 对象的 ConstraintCollection 中。

' The next line goes into the Declarations section of the module:
' SuppliersProducts is a class derived from DataSet.
Private suppliersProducts As SuppliersProducts 

Private Sub CreateConstraint()
   ' Declare parent column and child column variables.
   Dim parentColumn As DataColumn
   Dim childColumn As DataColumn
   Dim fkConstraint As ForeignKeyConstraint

   ' Set parent and child column variables.
   parentColumn = suppliersProducts.Tables("Suppliers").Columns("SupplierID")
   childColumn = suppliersProducts.Tables("Products").Columns("SupplieriD")
   fkConstraint = New ForeignKeyConstraint( _
       "SuppierFKConstraint", parentColumn, childColumn)

   ' Set null values when a value is deleted.
   fkConstraint.DeleteRule = Rule.SetNull
   fkConstraint.UpdateRule = Rule.Cascade
   fkConstraint.AcceptRejectRule = AcceptRejectRule.Cascade

   ' Add the constraint, and set EnforceConstraints to true.
   suppliersProducts.Tables("Suppliers").Constraints.Add(fkConstraint)
   suppliersProducts.EnforceConstraints = True
End Sub

平台

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

请参见

参考

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