程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C# DataSet和DataTable詳解(7)

C# DataSet和DataTable詳解(7)

編輯:關於C語言

上述代碼向DataSet中的DataTable中添加名為”newColumn”,類型為int且不為空,最大長度為4和唯一性為真的列。

dt.PrimaryKey=new DataColumn[]{dt.Columns["ID"]}

這段代碼是繼續上面代碼的,為一個DataTable中添加一個主鍵列,主鍵列是一個數據組,如有多個主鍵,只需在數組中添加一個列即可。如下:

dt.PrimaryKey=new DataColumns[]{dt.Columns["OrderID"],dt.Columns["ProductID"]}

添加外鍵:

ForeignKeyConstraint fk;

fk=new ForeignKeyConstraint(ds.Tables["Customers"].Columns["CustomerID"],ds.Tables["Orders"].Columns["CustomerID"]);

ds.Tables["Orders"].Constraints.Add(fk);

//上述代碼假如已經為Cusomers表和Orders創建了主鍵,

此句為添加外鍵約束。

上述是根據Customers表和Orders表的CustomerID來創建約束。

下面介紹修改DataRow中的內容:

DataRow dr=ds.Tables["Customer"].Rows.Find("ANTON");
if(dr==null)

else
{
dr.BeginEdit();
dr["CompanyName"]="newValue";
dr["ContactName"]="newValue2";
dr.EndEdit();
}
//

上面代碼通過Row集合的Find方法來在DataTable中的行進行定位,找到"ANTON"行,再修改"ANTON"行中CompanyName列和ContactName列的值。通過BeginEdit和EndEdit來緩存對行的修改,還可調用 CancelEdit為取消修改。

判斷某列是否為空值:

DataRow dr=ds.Tables["Customers"].Rows.Find("aaa");
if(dr.IsNull("ContactName");
..
else
dr["ContactName"]=DBNull.Value
//

這裡判斷ContactName列是否為空,如果不是則為其賦空值,呵,很無厘頭的做法,這裡只為演示為列賦空值的做法。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved