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

Definición

Obtiene o establece una matriz de columnas que funcionan como claves principales para la tabla de datos.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()

Valor de propiedad

Matriz de objetos DataColumn.An array of DataColumn objects.

Excepciones

Se trata de una clave externa.The key is a foreign key.

Ejemplos

En el primer ejemplo se muestra cómo devolver las columnas de clave principal DataTable para un mostrado DataGriden un.The first example shows how to return the primary key columns for a DataTable displayed in a DataGrid. En el segundo ejemplo se muestra cómo establecer las columnas de clave principal DataTablepara un.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.
    DataTable table = new DataTable();
    DataColumn[] keys = new DataColumn[2];
    DataColumn column;

    // Create column 1.
    column = new DataColumn();
    column.DataType = System.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 = System.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.ToString())
   Dim i As Integer
   For i = 0 To columns.GetUpperBound(0)
      Console.WriteLine(columns(i).ColumnName & columns(i).DataType.ToString())
   Next i
End Sub

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

   ' Create column 1.
   column = New DataColumn()
   column.DataType = System.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 = System.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

Comentarios

La clave principal de una tabla debe ser única para identificar el registro en la tabla.The primary key of a table must be unique to identify the record in the table. También es posible tener una tabla con una clave principal compuesta por dos o más columnas.It's also possible to have a table with a primary key made up of two or more columns. Esto sucede si una sola columna no puede contener suficientes valores únicos.This occurs when a single column can't contain enough unique values. Por ejemplo, una clave principal de dos columnas puede constar de una columna "FirstName" y "LastName".For example, a two column primary key might consist of a "FirstName" and "LastName" column. Dado que las claves principales pueden estar formadas por más de una columna PrimaryKey , la propiedad consta de una DataColumn matriz de objetos.Because primary keys can be made up of more than one column, the PrimaryKey property consists of an array of DataColumn objects.

Se aplica a

Consulte también: