Definizione di chiavi primarie

In genere, in una tabella di database è presente una colonna o un gruppo di colonne che consente l'identificazione univoca di ogni riga della tabella. Tale colonna o gruppo di colonne di identificazione è definito chiave primaria.

Quando si identifica un singolo tipo DataColumn come proprietà PrimaryKey per un tipo DataTable, la proprietà AllowDBNull della colonna viene automaticamente impostata su false e la proprietà Unique su true. Nel caso di chiavi primarie di più colonne, viene impostata automaticamente su false solo la proprietà AllowDBNull.

La proprietà PrimaryKey di un tipo DataTable riceve come valore una matrice contenente uno o più oggetti DataColumn, come illustrato negli esempi seguenti. Il primo esempio consente di definire una singola colonna come chiave primaria.

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;  

L'esempio seguente consente di definire due colonne come chiave primaria.

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;  

Vedi anche