| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3826 人关注过本帖
标题:请教高手关于出现某列不属于表的现象
取消只看楼主 加入收藏
binghe6610
Rank: 2
等 级:论坛游民
帖 子:273
专家分:61
注 册:2009-2-23
结帖率:86.67%
收藏
已结贴  问题点数:20 回复次数:6 
请教高手关于出现某列不属于表的现象
我的存储过程中动态创建的SQL语句查询出一个表,这个表中有一个列名为空,但是有数据都是0
填充到datatable表中后,想加一个合计行,每行循环加时出现‘“”列不属于表’
就是列名为空的列不属于表。

经过考虑,我在填充后设置空名的列名,添加了一个列名,结果是这个列后面的列又不属于表了。
不解1
请高手赐教
搜索更多相关主题的帖子: 现象 
2010-10-30 11:54
binghe6610
Rank: 2
等 级:论坛游民
帖 子:273
专家分:61
注 册:2009-2-23
收藏
得分:0 
自己顶一下
2010-10-30 12:00
binghe6610
Rank: 2
等 级:论坛游民
帖 子:273
专家分:61
注 册:2009-2-23
收藏
得分:0 
顶一下
2010-10-30 14:53
binghe6610
Rank: 2
等 级:论坛游民
帖 子:273
专家分:61
注 册:2009-2-23
收藏
得分:0 
好了,自己解决了。只要想办法总是能解决的。
我把列名通过循环重新命名了,搞定。
列名为空是因为在存储过程中使用了动态语句组合,也就动态的行转列。
输出表中有动态创建的列,有固定创建的列,问题就出现在动态列中。
列名为空是因为我的表结构原因,行业比较特殊,表结构都是自己摸索出来的,基本上还是满足行业需求的。
列名重新命名也不麻烦。
谢谢各位回复
2010-10-30 16:53
binghe6610
Rank: 2
等 级:论坛游民
帖 子:273
专家分:61
注 册:2009-2-23
收藏
得分:0 
其实我是个业余编程爱好者,没有太多的经验,只能是遇到什么问题解决什么问题。
这个问题的解决也是出于偶然,谈谈我解决的思路吧,供大家参考
首先是我创建了一个存储过程,
目的是在同一个表中某列的值是不确定的,但是要求把这个不确定值的列里所有行的值转为列来显示,同时根据列合计数据
当然除了这个列以外还有别的列是固定的。
所以经过研究创建了一个动态生成SQL语句的存储过程,这是个报表查询,考虑到将来的数据可能会很多,就使用了存储过程以提高查询效率。

在查询分析器中测试这个存储过程,发现有一个列的列名是空的,经过分析数据库表的结构,这样也是合理的,这个列名为空的列没有用处,也不影响其他数据的计算
于是就在中使用了这个存储过程
是报表就需要在最后有一个合计行,本人常用的方法是用循环计算合计,然后ADD一行到datatbale中(很多人要求最后的合计行固定显示,不随垂直滚动条移动,本人认为没有必要,)增加了导出EXCEL,让用户有更多的选择。
2010-10-31 10:12
binghe6610
Rank: 2
等 级:论坛游民
帖 子:273
专家分:61
注 册:2009-2-23
收藏
得分:0 
这次用循环合计时就出现了错误:“”列不属于表
还是第一次遇到这样的问题。
“”列之前有一个固定列,看来固定列是可以正常合计计算的,“”列还是动态行转列的第一列,所以问题应该就在动态行转列这里。
难道是列名为“”的原因?我在填充到datatbale表中后,把datatbale表的这个“”列重新命名为“没用”
测试,这个“没用”列后面的列(有列名)又不属于表了。
我想是不是应该把动态生成的列名全部重新命名一次呢?但是问题是既然是动态生成的,就不确定到底有几列动态生成的列,而且动态列后面还有固定的列。
干脆我就把所有的列名全部重新命名,为了不影响在datagridview中显示的效果,我把所有列名全部在原来名字后面加空格
新列名=原列名&""  这样其实还是显示的原列名

测试通过
2010-10-31 10:22
binghe6610
Rank: 2
等 级:论坛游民
帖 子:273
专家分:61
注 册:2009-2-23
收藏
得分:0 
其实,我在别的表中也使用过同样的方法,因为别的表中的存储过程没有输出空列名,所以一直很正常。
2010-10-31 10:29
快速回复:请教高手关于出现某列不属于表的现象
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017400 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved