Constraintとは? わかりやすく解説

Constraint クラス

1 つ上の DataColumn オブジェクト強制的に適用できる制約表します

名前空間: System.Data
アセンブリ: System.Data (system.data.dll 内)
構文構文

Public MustInherit Class
 Constraint
public abstract class Constraint
public abstract class Constraint
解説解説

制約は、DataTable 内のデータ整合性保持するための規則です。たとえば、1 つ上の関連テーブル使用されている値を削除する場合に、関連テーブル内のその値も削除するか、null 値設定するか、既定値設定するか、またはアクションを何も実行しないかを ForeignKeyConstraint によって決定します。これに対して、UniqueConstraint は、特定のテーブル内のすべての値が一意あるようにする制約です。詳細については、「テーブルへの制約追加」を参照してください

基本 Constraint コンストラクタ使用されません。主キー制約または一意キー制約作成するには UniqueConstraint コンストラクタ使用し外部キー制約作成するには ForeignKeyConstraint コンストラクタ使用します

使用例使用例

DataTable制約コレクション調べて、各制約UniqueConstraint または ForeignKeyConstraint のどちらであるかを確認する例を次に示します制約プロパティ次に表示されます。

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
private void GetConstraints(DataTable dataTable)
{
    Console.WriteLine();

    // Print the table's name.
    Console.WriteLine("TableName: " + dataTable.TableName);

    // Iterate through the collection and 
    // print each name and type value.
    foreach(Constraint 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(constraint is UniqueConstraint) 
        {
            PrintUniqueConstraintProperties(constraint);
        }
        // If the constraint is a ForeignKeyConstraint, 
        // print its properties using a function below.
        if(constraint is ForeignKeyConstraint) 
        {
            PrintForeigKeyConstraintProperties(constraint);
        }
    }
}
 
private void PrintUniqueConstraintProperties(
    Constraint constraint)
{
    UniqueConstraint uniqueConstraint;
    uniqueConstraint = (UniqueConstraint) constraint;

    // Get the Columns as an array.
    DataColumn[] columnArray;
    columnArray = uniqueConstraint.Columns;

    // Print each column's name.
    for(int i = 0;i<columnArray.Length ;i++)
 
    {
        Console.WriteLine("Column Name: " 
            + columnArray[i].ColumnName);
    }
}
 
private void PrintForeigKeyConstraintProperties(
    Constraint constraint)
{
    ForeignKeyConstraint fkConstraint;
    fkConstraint = (ForeignKeyConstraint) constraint;
 
    // Get the Columns as an array.
    DataColumn[] columnArray;
    columnArray = fkConstraint.Columns;
 
    // Print each column's name.
    for(int i = 0;i<columnArray.Length ;i++)
 
    {
        Console.WriteLine("Column Name: " 
            + columnArray[i].ColumnName);
    }
    Console.WriteLine();
 
    // Get the related columns and print each columns name.
    columnArray = fkConstraint.RelatedColumns ;
    for(int i = 0;i<columnArray.Length ;i++)
 
    {
        Console.WriteLine("Related Column Name: " 
            + columnArray[i].ColumnName);
    }
    Console.WriteLine();
}
継承階層継承階層
System.Object
  System.Data.Constraint
     System.Data.ForeignKeyConstraint
     System.Data.UniqueConstraint
スレッド セーフスレッド セーフ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
Constraint メンバ
System.Data 名前空間
ConstraintCollection
Constraints
ForeignKeyConstraint
UniqueConstraint

Constraint コンストラクタ


Constraint プロパティ


パブリック プロパティパブリック プロパティ

プロテクト プロパティプロテクト プロパティ
  名前 説明
プロテクト プロパティ _DataSet この制約属すDataSet取得します
参照参照

関連項目

Constraint クラス
System.Data 名前空間
ConstraintCollection
Constraints
ForeignKeyConstraint
UniqueConstraint

Constraint メソッド


Constraint メンバ

1 つ上の DataColumn オブジェクト強制的に適用できる制約表します

Constraint データ型公開されるメンバを以下の表に示します


プロテクト コンストラクタプロテクト コンストラクタ
  名前 説明
プロテクト メソッド Constraint Constraint クラス新しインスタンス初期化します。
パブリック プロパティパブリック プロパティ
プロテクト プロパティプロテクト プロパティ
  名前 説明
プロテクト プロパティ _DataSet この制約属すDataSet取得します
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

Constraint クラス
System.Data 名前空間
ConstraintCollection
Constraints
ForeignKeyConstraint
UniqueConstraint


このページでは「.NET Framework クラス ライブラリ リファレンス」からConstraintを検索した結果を表示しています。
Weblioに収録されているすべての辞書からConstraintを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からConstraint を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Constraint」の関連用語

Constraintのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Constraintのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS