例如:
DataSet ds = new DataSet();
DataTable dt = new DataTable("time");
dt.Columns.Add(new DataColumn("sn"));
DataRow dr;
for(int i = 1; i <= 12; i++)
{
dr = dt.NewRow();
dr[0] = i;
dt.Rows.Add(dr);
}
ds.Tables.Add("time"); string strSQL = "exec PhoneQuery '" + beginTime + "','','year'";
SqlDataAdapter cmd = new SqlDataAdapter(strSQL,strConn);
cmd.Fill(ds,"PhonePart"); strSQL = "exec SMSQuery '" + beginTime + "','','year'";
cmd = new SqlDataAdapter(strSQL,strConn);
cmd.Fill(ds,"SMSPart"); strSQL = "exec BankQuery '" + beginTime + "','','year'";
cmd = new SqlDataAdapter(strSQL,strConn);
cmd.Fill(ds,"BankPart"); System.Data.DataColumn[] parent = { ds.Tables["time"].Columns["sn"] };
System.Data.DataColumn[] childs = { ds.Tables["PhonePart"].Columns["month"],ds.Tables["SMSPart"].Columns["month"],ds.Tables["BankPart"].Columns["month"] };
ds.Relations.Add("myRelation",parent,childs);
repeater.DataSource = ds.Tables["parent"];
Page.DataBind();存储过程PhoneQuery、SMSQuery、BankQuery
得到的结果如下:
xxxx xxxx 1
xxxx xxxx 2
xxxx xxxx 5
上面的1、2、5就是月份,但是不一定连续,如:有可能3月分没数据,就没这行了
其他的存储过程结果相似现在要把他们结合起来
成为:
1 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
2 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
3 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
4 0000 0000 xxxx xxxx xxxx xxxx xxxx xxxx
5 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
6 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
7 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx如果其中一个没记录就以0代替
怎样写ds.Relations.Add来实现?谢谢
十万火急!!!!!!!
DataSet ds = new DataSet();
DataTable dt = new DataTable("time");
dt.Columns.Add(new DataColumn("sn"));
DataRow dr;
for(int i = 1; i <= 12; i++)
{
dr = dt.NewRow();
dr[0] = i;
dt.Rows.Add(dr);
}
ds.Tables.Add("time"); string strSQL = "exec PhoneQuery '" + beginTime + "','','year'";
SqlDataAdapter cmd = new SqlDataAdapter(strSQL,strConn);
cmd.Fill(ds,"PhonePart"); strSQL = "exec SMSQuery '" + beginTime + "','','year'";
cmd = new SqlDataAdapter(strSQL,strConn);
cmd.Fill(ds,"SMSPart"); strSQL = "exec BankQuery '" + beginTime + "','','year'";
cmd = new SqlDataAdapter(strSQL,strConn);
cmd.Fill(ds,"BankPart"); System.Data.DataColumn[] parent = { ds.Tables["time"].Columns["sn"] };
System.Data.DataColumn[] childs = { ds.Tables["PhonePart"].Columns["month"],ds.Tables["SMSPart"].Columns["month"],ds.Tables["BankPart"].Columns["month"] };
ds.Relations.Add("myRelation",parent,childs);
repeater.DataSource = ds.Tables["parent"];
Page.DataBind();存储过程PhoneQuery、SMSQuery、BankQuery
得到的结果如下:
xxxx xxxx 1
xxxx xxxx 2
xxxx xxxx 5
上面的1、2、5就是月份,但是不一定连续,如:有可能3月分没数据,就没这行了
其他的存储过程结果相似现在要把他们结合起来
成为:
1 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
2 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
3 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
4 0000 0000 xxxx xxxx xxxx xxxx xxxx xxxx
5 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
6 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
7 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx如果其中一个没记录就以0代替
怎样写ds.Relations.Add来实现?谢谢
十万火急!!!!!!!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货