資料庫資料表通常會有一個資料行或資料行群組,可唯一識別資料表的每個資料列。這個識別資料行或資料行群組又稱為主索引鍵。
當您將單一 DataColumn 識別為 DataTable 的 PrimaryKey 時,資料表會自動將資料行的 AllowDBNull 屬性設為 false,並將 Unique 屬性設為 true。如果是多重資料行的主索引鍵,則將只有 AllowDBNull 屬性會自動設為 false。
DataTable 的 PrimaryKey 屬性接收一或多個 DataColumn 物件的陣列做為其值,如下列範例所示。第一個範例定義單一資料行為主索引鍵。
PK欄位為單一欄位,如下設下:
workTable.PrimaryKey = new DataColumn[] {workTable.Columns["CustID"]};
的 屬性接收一或多個 物件的做為其值,如下列範例所示。第一個範例定義單一資料行為主索引鍵。workTable.PrimaryKey = new DataColumn[] {workTable.Columns["CustID"]};
// Or
DataColumn[] columns = new DataColumn[1];
columns[0] = workTable.Columns["CustID"];
workTable.PrimaryKey = columns;
PK欄位為複合欄位,如下設下:
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;