DataTable.Constraints Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the collection of constraints maintained by this table.
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
Property Value
A ConstraintCollection that contains the collection of Constraint objects for the table. An empty collection is returned if no Constraint objects exist.
- Attributes
Examples
The following example adds a ForeignKeyConstraint to the collection of constraints.
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
Remarks
A ForeignKeyConstraint restricts the action performed when a value in a column (or columns) is either deleted or updated. Such a constraint is intended to be used with primary key columns. In a parent/child relationship between two tables, deleting a value from the parent table can affect the child rows in one of the following ways.
The child rows can also be deleted (a cascading action).
The values in the child column (or columns) can be set to null values.
The values in the child column (or columns) can be set to default values.
An exception can be generated.
A UniqueConstraint becomes active when attempting to set a value in a primary key to a non-unique value.