如题,做个小东西遇到瓶颈了,求大神们指导。。
在数据库中查询出的结果是一个动态的sql数据集,也就是说查询结果集的列数是不定的,如图,查询结果的列还可能会出现更多的检测项目,但是目前在.net中数据控件都没法根据数据集自动拓展列数,水晶报表里面也不知道怎么弄,大神们给点思路,看这个问题怎么处理
SQL行业数据.NET数据库控件
在数据库中查询出的结果是一个动态的sql数据集,也就是说查询结果集的列数是不定的,如图,查询结果的列还可能会出现更多的检测项目,但是目前在.net中数据控件都没法根据数据集自动拓展列数,水晶报表里面也不知道怎么弄,大神们给点思路,看这个问题怎么处理
SQL行业数据.NET数据库控件
解决方案 »
- 网站很奇怪的被挂马,请大家帮忙。。
- 网站 上传空间的问题
- 一个小问题
- 求解页面大小问题?
- asp.net 在本地运行好用,为什么放在服务器上不好用啊?帮帮我谢谢
- 高分相送!!!! asp.net(C#)中用fso进行文件上传...
- 我想请问为什么datagrid必须要放到table上呢?而且table又必须放到panel上呢?您能帮我说明table,datagrid,panel三者之间的关系吗/?
- Gridview内容转成EXCEL问题
- 有一张表,有“Id”“部门”“上级部门Id”三个字段,请问如何根据这三个字段在Treeview控件中生成一棵组织结构树
- 新手来了4——vbc时候出错,在线等~~~!!!
- Postgre数据库字段带空格怎么查询id
- vs项目中文变乱码,求救!
你只要把那个什么属性设置为true就可以了,一个叫自动生成列的属性,你自己在工具里查一下然后,你的SQL语句得改一下,就是为每一列定义别名select [ph] as 'PH值', [water] as '含水率' .......................
我的语句是一个动态sql语句,这个语句貌似没法赋值给gridview 的selectcommond,语句如下:
declare @sql varchar(8000)
select @sql = isnull(@sql + '],[' , '') + item_name from tb_chemistry_item_value group by item_name
set @sql = '[' + @sql + ']'
exec ('select * from (select ordernum,value,item_name from tb_chemistry_item_value group by ordernum,value,item_name) a pivot (max(value) for item_name in (' + @sql + ')) b')
是从下面这个表里拼接过来的数据
declare @sql varchar(8000)
select @sql = isnull(@sql + '],[' , '') + item_name from tb_chemistry_item_value group by item_name
set @sql = '[' + @sql + ']'
exec ('select * from (select ordernum,value,item_name from tb_chemistry_item_value group by ordernum,value,item_name) a pivot (max(value) for item_name in (' + @sql + ')) b')
是从下面这个表里拼接过来的数据
嗯嗯,我知道你的语句是拼凑的,也就是你的数据集里的列是不固定的
gridview控件是可以帮你自动生成列的,也就是你有多少列,它就显示多少列,列的标题就是你的SQL字段名,所以我让你弄个列的别名,你每次把返回来的结果绑定到gridview控件的DataSource属性就可以了。AutoGenerateColumns="True" 就是这个属性了,它指示是否自动生成列至于你说的gridview 的selectcommond,我一下子没记起来这个控件的这个属性了
不过假如你是使用SqlDataSource控件的话,你后台可以代码显示给它赋值,这个控件是一个对象,你通过它的ID就可以了
用gridview必须承受速度慢之痛苦
用gridview必须承受速度慢之痛苦
数据量不大,还算好。。