Gets or sets an array of columns that function as primary keys for the data table.
[Visual Basic]
<Serializable>
Public Property PrimaryKey As DataColumn ()
[C#]
[Serializable]
public DataColumn[] PrimaryKey {get; set;}
[C++]
[Serializable]
public: __property DataColumn* get_PrimaryKey();
public: __property void set_PrimaryKey(DataColumn*[]);
[JScript]
public
Serializable
function get PrimaryKey() : DataColumn[];
public function set PrimaryKey(DataColumn[]);
Property Value
An array of DataColumn objects.
Exceptions
Exception Type Condition
DataException The key is a foreign key.
Remarks
The primary key of a table must be unique to identify the record in the table. It's also possible to have a table with a primary key made up of two or more columns. This occurs when a single column can't contain enough unique values. For example, a two column primary key might consist of a "FirstName" and "LastName" column. Because primary keys can be made up of more than one column, the PrimaryKey property consists of an array of DataColumn objects.
Example
[Visual Basic, C#] The first example shows how to return the primary key columns for a DataTable displayed in a DataGrid. The second example demonstrates how to set the primary key columns for a DataTable.
[Visual Basic]
Private Sub GetPrimaryKeys(myTable As DataTable)
' Create the array for the columns.
Dim colArr() As DataColumn
colArr = myTable.PrimaryKey
' Get the number of elements in the array.
Console.WriteLine("Column Count: " & colArr.Length.ToString())
Dim i As Integer
For i = 0 To colArr.GetUpperBound(0)
Console.WriteLine(colArr(i).ColumnName & colArr(i).DataType.ToString())
Next i
End Sub
Private Sub SetPrimaryKeys()
' Create a new DataTable and set two DataColumn objects as primary keys.
Dim myTable As DataTable = new DataTable()
Dim keys(2) As DataColumn
Dim myColumn As DataColumn
' Create column 1.
myColumn = New DataColumn()
myColumn.DataType = System.Type.GetType("System.String")
myColumn.ColumnName= "FirstName"
' Add the column to the DataTable.Columns collection.
myTable.Columns.Add(myColumn)
' Add the column to the array.
keys(0) = myColumn
' Create column 2 and add it to the array.
myColumn = New DataColumn()
myColumn.DataType = System.Type.GetType("System.String")
myColumn.ColumnName = "LastName"
myTable.Columns.Add(myColumn)
' Add the column to the array.
keys(1) = myColumn
' Set the PrimaryKeys property to the array.
myTable.PrimaryKey = keys
End Sub
[C#]
private void GetPrimaryKeys(DataTable myTable){
// Create the array for the columns.
DataColumn[] colArr;
colArr = myTable.PrimaryKey;
// Get the number of elements in the array.
Console.WriteLine("Column Count: " + colArr.Length);
for(int i = 0; i < colArr.Length; i++){
Console.WriteLine(colArr[i].ColumnName + colArr[i].DataType);
}
}
private void SetPrimaryKeys(){
// Create a new DataTable and set two DataColumn objects as primary keys.
DataTable myTable = new DataTable();
DataColumn[] keys = new DataColumn[2];
DataColumn myColumn;
// Create column 1.
myColumn = new DataColumn();
myColumn.DataType = System.Type.GetType("System.String");
myColumn.ColumnName= "FirstName";
// Add the column to the DataTable.Columns collection.
myTable.Columns.Add(myColumn);
// Add the column to the array.
keys[0] = myColumn;
// Create column 2 and add it to the array.
myColumn = new DataColumn();
myColumn.DataType = System.Type.GetType("System.String");
myColumn.ColumnName = "LastName";
myTable.Columns.Add(myColumn);
// Add the column to the array.
keys[1] = myColumn;
// Set the PrimaryKeys property to the array.
myTable.PrimaryKey = keys;
}
[C++, JScript] No example is available for C++ or JScript. To view a Visual Basic or C# example, click the Language Filter button in the upper-left corner of the page.
Requirements
Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows .NET Server familyURL:http://www.qqread.com/dotnet/y238118.html进入讨论组讨论。
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- VB.NET 入门教程 (22167次浏览)
- asp.net 实现购物车详细代码 (14312次浏览)
- C#版的网站新闻发布系统 (690次浏览)
- ASP.NET2.0轻松搞定统计图表 (651次浏览)
- 使用ASP.NET AJAX实现幻灯片效果 (604次浏览)
- ASP.NET如何存取 SQLServer数据库图片 (592次浏览)
- 如何制作Asp.Net界面模板 (582次浏览)
- ASP.NET中实现DataGrid数据排序 (580次浏览)
- VB.NET读写文本文件方法 (579次浏览)
- VC#初学入门:第一个Windows程序 (536次浏览)



