画面上增加一个DataGridView控件。
然后代码里写上:
DataTable dt = new DataTable();
dt.Columns.Add("第1列"); //给datatable增加字段
dt.Columns.Add("第2列");
DataRow dr = dt.NewRow(); //给datatable增加数据
dr["第1列"] = "value1";
dr["第2列"] = "value2";
dt.Rows.Add(dr);dataGridView1.DataSource = dt; //把datatable绑定到画面控件上
如果想操作Datatable内容的话,
if(dataGridView1.DataSource!= null){
//从控件中取出DataTable,或者把datatable做成全局变量也可以
DataTable dt = dataGridView1.DataSource as DataTable;
//查询或修改dt的数据}
dataset 是datatable的集合
dataset ds=new dataset();
ds.tables[0];依次类推可以获取你的表,不过一般会给表一个名字在引用会方便点。
如 sqldataadapter sda=new sqldataadapter("T-SQL",conn);
dataset ds=new dataset();
sda.fill(ds,"table"); //这里是在ds里新建了一个表,叫table,注意是新建,多次执行会报错,实际使用时,可以用contain来判断是否存在同名的表
ds.tables["table"];
取数据的话,有几种方式
ds.Tables[0].Rows[0]["列名"].ToString(); //0那里那里可用循环改变,即可以rows[i]
ds.Tables[0].Columns[0].ToString();
ds.Tables[0].Columns["列名"].ToString();
所有数据精准哲理都有的
1. 使用Select方法查找没有主键的表,或者通过非主键字段查找。
DataTable本身有一个select方法,返回的是一个DataRow的数组:
using (SqlConnection firstconnection = new SqlConnection(connectionstring))
{
SqlCommand cmdEmployee = firstconnection.CreateCommand();
cmdEmployee.CommandText = "select * from Employees";
SqlDataAdapter sda = new SqlDataAdapter(cmdEmployee);
DataSet ds=new DataSet();
sda.Fill(ds, "Employees");
DataRow[] dr=ds.Tables["Employees"].Select("Title Like 'Production' ");
}
2. 使用Find方法查找有主键的表
分两种情况:
(1) 主键只有一个字段
DataRow dr = dt.Rows.Find("主键字段的值");
(2) 主键有多个字段
例如,adventureWorks中的sales.SalesPersonQuotaHistory表,其主键由1个int类型字段和1个datetime组成,以下代码查找满足“ISalesPersonD=268且QuotaDate=2001-7-1 0:00:00 ”的记录。
Object[] obj= new Object[]{268,"2001-7-1 0:00:00"};
dr = dt.Rows.Find(obj);