100分求解一个问题!!!马上给分急!
我在DataSet里建立了5张虚拟表,分别如下:
...
OleDbDataAdapter objFind1 = new OleDbDataAdapter(sqlFind1,conn);
OleDbDataAdapter objFind2 = new OleDbDataAdapter(sqlFind2,conn);
OleDbDataAdapter objFind3 = new OleDbDataAdapter(sqlFind3,conn);
OleDbDataAdapter objFind4 = new OleDbDataAdapter(sqlFind4,conn);
OleDbDataAdapter objFind5 = new OleDbDataAdapter(sqlFind5,conn);
objFind1.Fill(df,"load1");
objFind2.Fill(df,"load2");
objFind3.Fill(df,"load3");
objFind4.Fill(df,"load4");
objFind5.Fill(df,"load5");
...
我在*.aspx页面中进行如下绑定:
...
<%#DataBinder.Eval(Container.DataItem,"deskTitle")%>
...
声明一下:这5张虚拟表中都有"deskTitle"这个字段,但最后我只能读出"load1"这张表中的内容。
为什么呢?
请问,我如何将所有表中的"deskTitle"这个字段的信息一起读出来呢?
问题点数:100、回复次数:6Top
1 楼godblessyU(痛并快乐着!)回复于 2005-06-03 13:43:52 得分 10
为什么要用5个?可不可以在一个sql语句中实现。
如果不可以,那就自己用代码将5个datatable合并到一个里面吧。Top
2 楼Truly()回复于 2005-06-03 13:57:06 得分 25
sqlFind1 = "select deskTitle from table1 union select deskTitle from table2 union select deskTitle from table3 union select deskTitle from table4 union select deskTitle from table5 "Top
3 楼hchxxzx(NET?摸到一点门槛)回复于 2005-06-03 13:58:08 得分 25
默认的绑定对象是dataset里面的第一个表
如果你此5个虚拟表字段完全一样,你可在SQL语句中将它们合并为一个表
sql = "select * from table1";
sql += " union ";
sql += " select * from table2 ";
sql += " union ";
......
sql = "select * from (" + sql + ")"
这样就可以显示出所有记录了.Top
4 楼herochuangxin(chuangxin)回复于 2005-06-03 13:58:24 得分 10
你的写法很麻烦,合并到一个sql语句,一次就可以查询出来。Top
5 楼lr2651(戎 The Two Towers)回复于 2005-06-03 14:04:53 得分 10
DataGrid1.DataScouce = this.DataSet1.Tabels["load2"].DefaultView;
DataGrid1.DataBind();
这么写看看Top
6 楼lovefootball(蟑螂(生活就是扯淡--做人要放低姿态))回复于 2005-06-03 14:22:31 得分 20
sqlFind1 = "select deskTitle from table1 union select deskTitle from table2 union select deskTitle from table3 union select deskTitle from table4 union select deskTitle from table5....................... "
用union连起来Top




