Definieren von PrimärschlüsselnDefining Primary Keys

Eine Datenbanktabelle enthält i. d. R. eine Spalte oder eine Gruppe von Spalten, die jede Zeile in der Tabelle eindeutig identifiziert.A database table commonly has a column or group of columns that uniquely identifies each row in the table. Diese identifizierende Spalte oder Spaltengruppe wird als Primärschlüssel bezeichnet.This identifying column or group of columns is called the primary key.

Wenn Sie einen einzelnen DataColumn AllowDBNull DataTable PrimaryKey als für einen identifizieren, wird die-Eigenschaft der Spalte von der Tabelle automatisch auf false festgelegt Unique , und die-Eigenschaft wird auf truefestgelegt.When 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. Bei mehrspaltigen primär Schlüsseln wird nur die AllowDBNull -Eigenschaft automatisch auf falsefestgelegt.For multiple-column primary keys, only the AllowDBNull property is automatically set to false.

Die PrimaryKey -Eigenschaft eines DataTable empfängt als Wert ein Array aus einem oder mehreren datacolenumn -Objekten, wie in den folgenden Beispielen gezeigt.The PrimaryKey property of a DataTable receives as its value an array of one or more DataColumn objects, as shown in the following examples. Im ersten Beispiel wird eine einzelne Spalte als Primärschlüssel definiert.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;  

Im folgenden Beispiel werden zwei Spalten als Primärschlüssel definiert.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;  

Siehe auchSee also