DataTable.PrimaryKey DataTable.PrimaryKey DataTable.PrimaryKey DataTable.PrimaryKey Property

Definizione

Ottiene o imposta una matrice di colonne che agiscono da chiavi primarie della tabella di dati.Gets or sets an array of columns that function as primary keys for the data table.

public:
 property cli::array <System::Data::DataColumn ^> ^ PrimaryKey { cli::array <System::Data::DataColumn ^> ^ get(); void set(cli::array <System::Data::DataColumn ^> ^ value); };
[System.ComponentModel.TypeConverter(typeof(System.Data.PrimaryKeyTypeConverter))]
[System.Data.DataSysDescription("DataTablePrimaryKeyDescr")]
public System.Data.DataColumn[] PrimaryKey { get; set; }
member this.PrimaryKey : System.Data.DataColumn[] with get, set
Public Property PrimaryKey As DataColumn()

Valore della proprietà

Matrice di oggetti DataColumn.An array of DataColumn objects.

Eccezioni

La chiave è una chiave esterna.The key is a foreign key.

Esempi

Nel primo esempio viene illustrato come restituire le colonne chiave primaria per un DataTable oggetto visualizzato in DataGridun oggetto.The first example shows how to return the primary key columns for a DataTable displayed in a DataGrid. Nel secondo esempio viene illustrato come impostare le colonne chiave primaria per un DataTableoggetto.The second example demonstrates how to set the primary key columns for a DataTable.

   private void GetPrimaryKeys(DataTable table)
   {
       // Create the array for the columns.
       DataColumn[] columns;
       columns = table.PrimaryKey;

       // Get the number of elements in the array.
       Console.WriteLine($"Column Count: {columns.Length}");
       for (int i = 0; i < columns.Length; i++)
       {
           Console.WriteLine($"{columns[i].ColumnName} {columns[i].DataType}");
       }
   }

   private void SetPrimaryKeys()
   {
       // Create a new DataTable and set two DataColumn objects as primary keys.
       var table = new DataTable();
       var keys = new DataColumn[2];
       DataColumn column;

       // Create column 1.
       column = new DataColumn();
       column.DataType = Type.GetType("System.String");
       column.ColumnName= "FirstName";

       // Add the column to the DataTable.Columns collection.
       table.Columns.Add(column);

       // Add the column to the array.
       keys[0] = column;

       // Create column 2 and add it to the array.
       column = new DataColumn();
       column.DataType = Type.GetType("System.String");
       column.ColumnName = "LastName";
       table.Columns.Add(column);

       // Add the column to the array.
       keys[1] = column;

       // Set the PrimaryKeys property to the array.
       table.PrimaryKey = keys;
   }
Private Sub GetPrimaryKeys(table As DataTable)
    ' Create the array for the columns.
    Dim columns As DataColumn()
    columns = table.PrimaryKey

    ' Get the number of elements in the array.
    Console.WriteLine($"Column Count: {columns.Length}")
    For i = 0 To columns.GetUpperBound(0)
        Console.WriteLine($"{columns(i).ColumnName} {columns(i).DataType}")
    Next
End Sub

Private Sub SetPrimaryKeys()
    ' Create a new DataTable and set two DataColumn objects as primary keys.
    Dim table As New DataTable()
    Dim keys(1) As DataColumn
    Dim column  As DataColumn

    ' Create column 1.
    column = New DataColumn()
    column.DataType = Type.GetType("System.String")
    column.ColumnName= "FirstName"

    ' Add the column to the DataTable.Columns collection.
    table.Columns.Add(column)
    ' Add the column to the array.
    keys(0) = column

    ' Create column 2 and add it to the array.
    column = New DataColumn()
    column.DataType = Type.GetType("System.String")
    column.ColumnName = "LastName"
    table.Columns.Add(column)

    ' Add the column to the array.
    keys(1) = column

    ' Set the PrimaryKeys property to the array.
    table.PrimaryKey = keys
End Sub

Commenti

La chiave primaria di una tabella deve essere univoca per identificare il record nella tabella.The primary key of a table must be unique to identify the record in the table. È anche possibile disporre di una tabella con una chiave primaria costituita da due o più colonne.It's also possible to have a table with a primary key made up of two or more columns. Questo errore si verifica quando una singola colonna non può contenere valori univoci sufficienti.This occurs when a single column can't contain enough unique values. Una chiave primaria a due colonne, ad esempio, può essere costituita da una colonna "FirstName" e "LastName".For example, a two column primary key might consist of a "FirstName" and "LastName" column. Poiché le chiavi primarie possono essere costituite da più di una colonna PrimaryKey , la proprietà è costituita DataColumn da una matrice di oggetti.Because primary keys can be made up of more than one column, the PrimaryKey property consists of an array of DataColumn objects.

Si applica a

Vedi anche