日期:2014-05-19  浏览次数:20398 次

请教关于gridview 显示数据时候表头的问题
我有3个数据表a,b,c       a   中有字段     TYPEID(主键)   TYPENAME  

b中有字段   PROPERTYID(主键)     TYPEID   (外键)   PROPERTYNAME   //属性名

      PROFIELD   //对应字段       c表中有字段       DEVICEID(主键)     TYPEID(外键)   DEVICENAME   //设备名       F01   ,F02,F03,F04………F0n       假设有个字段   代表N个属性           b表中的对应字段   所录入的值就是   F01,F02等        

意思就是我在a中添加个分类,b中添加一个属性属于某个分类,然后这个属性对应一个字段名到c表中,,c表中有这个属性的具体值。。

 

 

我现在要用gridview显示一个设备的属性,我希望是表头部分显示对应的b表中的属性名字段,然后属性字段下面显示详细的值。。例如

 

设备名称       类别     大小   重量   体积

皮球                   玩具           10             20           30              

          其中设备名称来自表C       类别来自表A     大小重量   体积来自表B的property   字段的值     该值由类别ID决定,也就是大小重量体积是动态改变的,我们假设的是一个类里面的属性个数是固定的,就是好比玩具类只有大小重量体积3个属性,然后就生成上面那种形式的表。。

        要求不要从数据库返回空白字段。。(也就是有好多个f01f02...只返回有数据的并生成gridview)也就是只显示f01   f02   f03的值。,不显示gridview后面的表格。。。有高手赐教么?拜托了

要说明详细点。可以不写代码,但是思路要明晰


------解决方案--------------------
顶不了吧?哈
------解决方案--------------------
配置数据源绑定gridview的时候,选择“指定自定义SQL语句或存储过程”,通过三张表的主外键把三张表连起来构成SQL语句或存储过程达到楼主期望的效果!

类似的一个例子:
SELECT C.code, C.mark, C.name, C.pycode, C.wbcode, B.name as Bname, A.name as Aname,C.price, C.insucode1, C.verifies1, C.usemark, C.note, C.citymark, C.townmark, C.villagemark
FROM pub_dic_chargelist as C, pub_dic_bill as B, pub_dic_audit as A
WHERE C.mark = 'Z ' and C.billcode = B.code and C.auditcode = A.code

------解决方案--------------------
交叉
------解决方案--------------------
查询是所有要求的字段not null就行阿
------解决方案--------------------
LZ能不能把表的结构和关系表达详细一些?