主キーの定義Defining Primary Keys

通常、データベース テーブルには、テーブル内の各行を一意に識別する単一の列または複数の列があります。A database table commonly has a column or group of columns that uniquely identifies each row in the table. 行を識別するこのような列を、主キーと呼びます。This identifying column or group of columns is called the primary key.

DataColumn AllowDBNull UniqueのとDataTableして単一のを指定すると、テーブルによって自動的に列のプロパティが false に設定され、プロパティが true に設定されます。 PrimaryKeyWhen you identify a single DataColumn as the PrimaryKey for a DataTable, the table automatically sets the AllowDBNull property of the column to false and the Unique property to true. 複数列の主キーについては、 Allowdbnullプロパティのみが自動的にfalseに設定されます。For multiple-column primary keys, only the AllowDBNull property is automatically set to false.

PrimaryKey プロパティは、次の例に示すように、1つ以上の DataColumn オブジェクトの配列をその値として受け取ります。DataTableThe PrimaryKey property of a DataTable receives as its value an array of one or more DataColumn objects, as shown in the following examples. 最初の例は、1 つの列を主キーとして定義しています。The first example defines a single column as the primary key.

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 つの列を主キーとして定義する例を次に示します。The following example defines two columns as a primary key.

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;  

関連項目See also