DataRow:資料列物件,含有多個資料值
DataColumn:資料表欄位物件。
DataTable:資料表物件,含有多個DataRow、DataColumn物件。
DataSet:資料集物件,含有多個DataTable。
public static void Main(string[] args)
{
DataTable dt = new DataTable();
dt.TableName = "Student";
//定義DataTable欄位
dt.Columns.Add("SN", typeof(int));
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("Sex", typeof(bool));
DataColumn dc = new DataColumn("Birthday", typeof(DateTime));
dt.Columns.Add(dc);
//以Add方法新增欄位資料
dt.Rows.Add(1, "John", true, new DateTime(1998, 8, 13));
//以NewRow方法新增相同結構描述之資料列
//以索引新增欄位資料
DataRow dr2 = dt.NewRow();
dr2[0] = 2;
dr2[1] = "Mary";
dr2[2] = false;
dr2[3] = new DateTime(1995, 6, 12);
dt.Rows.Add(dr2);
DataRow dr3 = dt.NewRow();
//以欄位名稱新增欄位資料
dr3["SN"] = 3;
dr3["Name"] = "Tom";
dr3["Sex"] = true;
dr3["Birthday"] = new DateTime(1997, 3, 6);
dt.Rows.Add(dr3);
//將DataTable加入DataSet中
DataSet ds = new DataSet();
ds.DataSetName = "MySet";
ds.Tables.Add(dt);
//以索引讀取特定欄位名稱
Console.WriteLine(dt.Columns[2].ColumnName);
//讀取DataTable的全部欄位名稱
foreach (DataColumn item in dt.Columns)
{
Console.WriteLine(item.ColumnName);
}
//以索引、欄位名稱讀取特定欄位資料
Console.WriteLine(dt.Rows[1]["Name"] + " - " + dt.Rows[1]["Sex"] + " - " + Convert.ToDateTime(dt.Rows[1]["Birthday"]).ToString("yyyy/MM/dd"));
//讀取DataTable的全部欄位資料
foreach (DataRow item in dt.Rows)
{
Console.WriteLine(item[0] + " - " + item[1] + " - " + item[2] + " - " + item[3]);
}
}
沒有留言:
張貼留言