Constraint Class
Assembly: System.Data (in system.data.dll)
'Declaration <TypeConverterAttribute(GetType(ConstraintConverter))> _ Public MustInherit Class Constraint 'Usage Dim instance As Constraint
/** @attribute TypeConverterAttribute(System.Data.ConstraintConverter) */ public abstract class Constraint
TypeConverterAttribute(System.Data.ConstraintConverter) public abstract class Constraint
Not applicable.
A constraint is a rule used to maintain the integrity of the data in the DataTable. For example, when you delete a value that is used in one or more related tables, a ForeignKeyConstraint determines whether the values in the related tables are also deleted, set to null values, set to default values, or whether no action occurs. A UniqueConstraint, on the other hand, just makes sure that all values within a particular table are unique. For more information, see Adding Constraints to a Table.
A base Constraint constructor is not used. Primary or unique key constraints are created by using the UniqueConstraint constructor, and foreign key constraints are created by using the ForeignKeyConstraint constructor.
The following example examines the collection of constraints for a DataTable and determines whether each constraint is a UniqueConstraint or a ForeignKeyConstraint. The properties of the constraint are then displayed.
Private Sub GetConstraints(dataTable As DataTable) Console.WriteLine() ' Print the table's name. Console.WriteLine("TableName: " & dataTable.TableName) ' Iterate through the collection and print ' each name and type value. Dim constraint As Constraint For Each constraint In dataTable.Constraints Console.WriteLine("Constraint Name: " _ & constraint.ConstraintName) Console.WriteLine("Type: " _ & constraint.GetType().ToString()) ' If the constraint is a UniqueConstraint, ' print its properties using a function below. If TypeOf constraint Is UniqueConstraint Then PrintUniqueConstraintProperties(constraint) End If ' If the constraint is a ForeignKeyConstraint, ' print its properties using a function below. If TypeOf constraint Is ForeignKeyConstraint Then PrintForeigKeyConstraintProperties(constraint) End If Next constraint End Sub Private Sub PrintUniqueConstraintProperties( _ constraint As Constraint) Dim uniqueConstraint As UniqueConstraint uniqueConstraint = CType(constraint, UniqueConstraint) ' Get the Columns as an array. Dim columnArray() As DataColumn columnArray = uniqueConstraint.Columns ' Print each column's name. Dim i As Integer For i = 0 To columnArray.Length - 1 Console.WriteLine("Column Name: " _ & columnArray(i).ColumnName) Next i End Sub Private Sub PrintForeigKeyConstraintProperties( _ constraint As Constraint) Dim fkConstraint As ForeignKeyConstraint fkConstraint = CType(constraint, ForeignKeyConstraint) ' Get the Columns as an array. Dim columnArray() As DataColumn columnArray = fkConstraint.Columns ' Print each column's name. Dim i As Integer For i = 0 To columnArray.Length - 1 Console.WriteLine("Column Name: " _ & columnArray(i).ColumnName) Next i Console.WriteLine() ' Get the related columns and print each columns name. columnArray = fkConstraint.RelatedColumns For i = 0 To columnArray.Length - 1 Console.WriteLine("Related Column Name: " _ & columnArray(i).ColumnName) Next i Console.WriteLine() End Sub
Windows 98, Windows Server 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
The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.