次の方法で共有


UniqueConstraint コンストラクタ (String, DataColumn )

名前と DataColumn オブジェクトの配列を指定して、UniqueConstraint クラスの新しいインスタンスを初期化します。

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

構文

'宣言
Public Sub New ( _
    name As String, _
    columns As DataColumn() _
)
'使用
Dim name As String
Dim columns As DataColumn()

Dim instance As New UniqueConstraint(name, columns)
public UniqueConstraint (
    string name,
    DataColumn[] columns
)
public:
UniqueConstraint (
    String^ name, 
    array<DataColumn^>^ columns
)
public UniqueConstraint (
    String name, 
    DataColumn[] columns
)
public function UniqueConstraint (
    name : String, 
    columns : DataColumn[]
)

パラメータ

  • name
    制約の名前。
  • columns
    制約する DataColumn オブジェクトの配列。

使用例

2 つの列を持つ DataTable を作成し、新しい UniqueConstraintConstraintCollection に追加する例を次に示します。

Private Sub MakeTableWithUniqueConstraint()
    ' Create a DataTable with 2 DataColumns.
    Dim dataTable As New DataTable("dataTable")
    Dim idColumn As New DataColumn( _
        "ID", System.Type.GetType("System.Int32"))
    Dim nameColumn As New DataColumn( _
        "Name", System.Type.GetType("System.String"))
    dataTable.Columns.Add(idColumn)
    dataTable.Columns.Add(nameColumn)

    ' Run procedure to create a constraint.
    AddUniqueConstraint(dataTable)

    ' Add one row to the table.
    Dim dataRow As DataRow
    dataRow = dataTable.NewRow()
    dataRow("ID") = 1
    dataRow("Name") = "John"
    dataTable.Rows.Add(dataRow)

    ' Display the constraint name.
    Console.WriteLine(dataTable.Constraints(0).ConstraintName)

    ' Try to add an identical row,
    ' which throws an exception.
    Try
        dataRow = dataTable.NewRow()
        dataRow("ID") = 1
        dataRow("Name") = "John"
        dataTable.Rows.Add(dataRow)
    Catch ex As Exception
        Console.WriteLine("Exception Type: {0}", ex.GetType())
        Console.WriteLine("Exception Message: {0}", ex.Message)
    End Try
End Sub

Private Sub AddUniqueConstraint(ByVal dataTable As DataTable)
    ' Create the DataColumn array.
    Dim dataColumns(1) As DataColumn
    dataColumns(0) = dataTable.Columns("ID")
    dataColumns(1) = dataTable.Columns("Name")

    ' Create the constraint on both columns.
    Dim uniqueConstraint As UniqueConstraint = _
        New UniqueConstraint("idNameConstraint", dataColumns)
    dataTable.Constraints.Add(uniqueConstraint)
End Sub
static private void MakeTableWithUniqueConstraint()
{
    // Create a DataTable with 2 DataColumns.
    DataTable dataTable = new DataTable("dataTable");
    DataColumn idColumn = new DataColumn(
        "id", System.Type.GetType("System.Int32"));
    DataColumn nameColumn = new DataColumn(
        "Name", System.Type.GetType("System.String"));
    dataTable.Columns.Add(idColumn);
    dataTable.Columns.Add(nameColumn);

    // Run procedure to create a constraint.
    AddUniqueConstraint(dataTable);

    // Add one row to the table.
    DataRow dataRow;
    dataRow = dataTable.NewRow();
    dataRow["id"] = 1;
    dataRow["Name"] = "John";
    dataTable.Rows.Add(dataRow);

    // Display the constraint name. 
    Console.WriteLine(
        dataTable.Constraints[0].ConstraintName);

    // Try to add an identical row, 
    // which throws an exception.
    try
    {
        dataRow = dataTable.NewRow();
        dataRow["id"] = 1;
        dataRow["Name"] = "John";
        dataTable.Rows.Add(dataRow);
    }
    catch (Exception ex)
    {
        Console.WriteLine(
            "Exception Type: {0}", ex.GetType());
        Console.WriteLine(
            "Exception Message: {0}", ex.Message);
    }
}
static private void AddUniqueConstraint(
    DataTable dataTable)
{
    // Create the DataColumn array.
    DataColumn[] dataColumns = new DataColumn[2];
    dataColumns[0] = dataTable.Columns["id"];
    dataColumns[1] = dataTable.Columns["Name"];

    // Create the constraint on both columns.
    UniqueConstraint uniqueConstraint =
        new UniqueConstraint("idNameConstraint", dataColumns);
    dataTable.Constraints.Add(uniqueConstraint);
}

プラットフォーム

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

参照

関連項目

UniqueConstraint クラス
UniqueConstraint メンバ
System.Data 名前空間