读书人

ado.net 怎么将多结果集分别绑定到两

发布时间: 2013-09-09 20:31:09 作者: rapoo

ado.net 如何将多结果集分别绑定到两个dataGridView1

private void sqlexec2()
{
string str = "server=.;uid=sa;pwd=ttt;database=xxxx";//连接字符串
string sql = "select number,name,sex from mytemp where sex='男' and department='销售';select number,name,sex from mytemp where sex='女' and department='销售部';"; //两个查询语句
SqlConnection conn = new SqlConnection(str);//连接对象
SqlCommand comm = new SqlCommand(sql, conn);
DataTable dt = new DataTable();
SqlDataReader dr = null;

conn.Open();
dr = comm.ExecuteReader();
dt.Load(dr);
dataGridView1.DataSource = dt;
dr.NextResult();
dt.Load(dr);
dataGridView2.DataSource = dt;
conn.Close();
}

结果是两个表格都显示的是前一个查询的结果
[解决办法]
引用:
DataTable dt1 = new DataTable();
DataTable dt2 = new DataTable();

conn.Open();


SqlDataReader dr = comm.ExecuteReader();
dt1.Load(dr);
dt2.Load(dr);

conn.Close();
dataGridView1.DataSource = dt1;
dataGridView2.DataSource = dt2;


为什么加载到不同的datatable就能实现?
同一个datatable 不就覆盖掉了么

读书人网 >C#

热点推荐