名前と 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 を作成し、新しい UniqueConstraint を ConstraintCollection に追加する例を次に示します。
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