3
我有一個小數據集和幾個數據表。我加載來自各種數據庫的數據表,並且有一個配置文件,用於確定要在給定數據表上執行的主鍵。如果配置不包含正確的(非唯一)主鍵,那麼在將主鍵應用於數據表時如何捕獲此事件?目前看來,它允許我應用主鍵,即使它不是唯一的。....net數據集主鍵 - 強制唯一性?
DataTable dtbl = ds.Tables[t.tblname];
DataColumn[] pks = new DataColumn[t.Get_Key_Columns().Count];
int i = 0;
foreach(DataColumn c in dtbl.Columns)
{
if(t.Get_Key_Columns().Exists(delegate(App_Column ac)
{return (ac.column_name == c.ColumnName);}))
{
pks[i] = c;
i++;
}
}
try
{
dtbl.PrimaryKey = pks;
}
catch etc.......
任何人指出我失蹤了什麼?謝謝
嘗試UniqueConstraint uc = new UniqueConstraint(「pk」,pks,true); dtbl.Constraints.Add(uc); } 我檢查了HasErrors,並且在每張表應用了PK後檢查它爲假。 (檢查數據集和數據表屬性)....我甚至打電話AcceptChanges()... – WIDBA 2008-12-11 15:05:44