單列主鍵
DataTable fdt = CmmDb.GetDataTable(orgsql);
fdt.PrimaryKey = new DataColumn[] { fdt.Columns["company_enroute_id"] };
DataRow dr = fdt.Rows.Find(fid); //在總表中找到該航線對應的行,該行與總表是應用關系,改變dr也就改變了fdt
多列主鍵
DataTable dtsegment = CmmDb.GetDataTable(string.Format("select * from {0}.segment where 1=2",CmmDb.dbUser));
dtsegment.PrimaryKey=new DataColumn[2]{dtsegment.Columns["AIRWAY_POINT1"],dtsegment.Columns["AIRWAY_POINT2"]};
按主鍵查找行
DataRow segrow=dtsegment.Rows.Find( new object[]{ pid1, pid2}) ; 該行與總表是應用關系,改變dr也就改變了主表
如果該DataTable要整體寫入數據庫,最后在寫入前刪除主鍵,避免出錯
fdt.PrimaryKey = null;