主キーの定義 (ADO.NET)

通常、データベース テーブルには、テーブル内の各行を一意に識別する単一の列または複数の列があります。 行を識別するこのような列を、主キーと呼びます。

1 つの DataColumnDataTablePrimaryKey として指定すると、テーブルはその列の AllowDBNull プロパティを false に、Unique プロパティを true に自動的に設定します。 複数列の主キーの場合は、AllowDBNull プロパティだけが自動的に false に設定されます。

DataTablePrimaryKey プロパティがその値として、1 つ以上の DataColumn オブジェクトから成る配列を受け取る例を次に示します。 最初の例は、1 つの列を主キーとして定義しています。

workTable.PrimaryKey = New DataColumn() {workTable.Columns("CustID")}

' Or

Dim columns(1) As DataColumn
columns(0) = workTable.Columns("CustID")
workTable.PrimaryKey = columns
workTable.PrimaryKey = new DataColumn[] {workTable.Columns["CustID"]};

// Or

DataColumn[] columns = new DataColumn[1];
columns[0] = workTable.Columns["CustID"];
workTable.PrimaryKey = columns;

2 つの列を主キーとして定義する例を次に示します。

workTable.PrimaryKey = New DataColumn() {workTable.Columns("CustLName"), _
                                         workTable.Columns("CustFName")}

' Or

Dim keyColumn(2) As DataColumn
keyColumn(0) = workTable.Columns("CustLName")
keyColumn(1) = workTable.Columns("CustFName")
workTable.PrimaryKey = keyColumn
workTable.PrimaryKey = new DataColumn[] {workTable.Columns["CustLName"], 
                                         workTable.Columns["CustFName"]};

// Or

DataColumn[] keyColumn = new DataColumn[2];
keyColumn[0] = workTable.Columns["CustLName"];
keyColumn[1] = workTable.Columns["CustFName"];
workTable.PrimaryKey = keyColumn;

参照

参照

DataTable

その他の技術情報

DataTable スキーマの定義 (ADO.NET)

DataTable (ADO.NET)