Definování primárních klíčů

Tabulka databáze obvykle obsahuje sloupec nebo skupinu sloupců, které jednoznačně identifikují každý řádek v tabulce. Tato identifikace sloupce nebo skupiny sloupců se nazývá primární klíč.

Když identifikujete jeden DataColumn jako PrimaryKey pro DataTable, tabulka automaticky nastaví vlastnost sloupce AllowDBNull na false a vlastnost Unique na hodnotu true. U primárních klíčů s AllowDBNull více sloupci je vlastnost automaticky nastavena na false.

Vlastnost PrimaryKey objektu DataTable přijímá jako hodnotu pole jednoho nebo více DataColumn objektů, jak je znázorněno v následujících příkladech. První příklad definuje jeden sloupec jako primární klíč.

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;

Následující příklad definuje dva sloupce jako primární klíč.

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;

Viz také