| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3118 人关注过本帖
标题:请教两个修改表结构和组合框数据绑定的问题
取消只看楼主 加入收藏
lyxc34
Rank: 2
等 级:论坛游民
帖 子:139
专家分:50
注 册:2011-7-3
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:33 
请教两个修改表结构和组合框数据绑定的问题
  先说下我要实现的目的:从表A(交叉表)中取所有字段(字段数不确定),表B中取一个字段xm,数据放在新表NEW中,我用的以下代码
SELECT 表A.*,表B.xm;
FROM 表A,表B;
WHERE 表A.xh=表B.xh;
INTO CURSOR TEMP.dbf

SELECT的结果是没问题,不过我想把字段XM放在字段XH的后面,由于是在表单中输出结果,所以用MODI STRU不可行。我有两个思路,一个是直接把xh和xm字段交换位置,不过不知道方法;另外一个思路是直接SELECT 表A.xh,表B.xm,表A.*,这样输出结果会有两个xh字段:xh_a,xh_b,然后删除第三个字段,rename第一个字段,我用了ALTER TABLE temp DROP COLUMN xh_b,不过提示CURSOR表为只读无法修改,难道要输出为DBF再修改?有没什么好的方法。
  再一个问题是关于组合框的,绑定了数据表中的一个字段nj,不过这个字段的记录是有很多重复的,如何去掉重复的?set filter to?请教。
搜索更多相关主题的帖子: 数据绑定 
2011-07-16 22:31
lyxc34
Rank: 2
等 级:论坛游民
帖 子:139
专家分:50
注 册:2011-7-3
收藏
得分:0 
有啊,一般有问题我会先看帮助,找不到再百度,再不行才发帖。我相信帮助里面很多信息都有,可是有些命令我完全不知道的话,都不知道从哪里查起。
2011-07-16 22:56
lyxc34
Rank: 2
等 级:论坛游民
帖 子:139
专家分:50
注 册:2011-7-3
收藏
得分:0 
呵呵,这个我知道啊,现在是字段数是不固定的,不同专业课程数不一样,所以如果用SELECT排序的话,前几个字段确实可以写,可是后面的字段我没法写,因为我写命令的时候不知道后面有几个字段,也不知道字段名是什么样的。这里能用循环写吗?
我的A表是用VFPXTAB生成的交叉表,而交叉表要求源表只能有三个字段,生成的交叉表顶多再加一个SUM()或AVE()字段,我现在是想在前面加一个姓名字段,后面既要有SUM又要有AVE,我不知道有没有别的办法,只能用最笨的方法:生成表后再逐个添加,把中间生成的表再逐个删除。

[ 本帖最后由 lyxc34 于 2011-7-16 23:07 编辑 ]
2011-07-16 23:04
lyxc34
Rank: 2
等 级:论坛游民
帖 子:139
专家分:50
注 册:2011-7-3
收藏
得分:0 
  显示用的是GRID,数据源绑定为最后生成的交叉表。
  我想实现的就是第一字段显示学号,第二显示姓名,中间几个显示科目(数目不确定),最后两项是总分和平均分。
  为了美观,如果可以的话最好能实现表字段长度自动适应不同数目的科目,这个功能目前完全没办法
2011-07-16 23:17
lyxc34
Rank: 2
等 级:论坛游民
帖 子:139
专家分:50
注 册:2011-7-3
收藏
得分:0 
我说下我总的思路吧:数据环境为成绩表,字段为:学号、课程号、成绩,为了方便查询我还加了学年、学期和年级,虽然这些都可以从学号中取,可是用起来不怎么方便。我要实现的是通过组合框选择条件对成绩表进行查询并将结果输出到GRID中,输出的格式为交叉表,所以中间肯定要用到VFPXTAB,而它要求只能有三个字段,所以我先筛选,将筛选结果存到一个只有学号、课程名和成绩三个字段的中间表中,再用这个表生成交叉表,生成的交叉表再添加姓名、总分和平均分三个字段,最后显示在GRID中。
2011-07-16 23:24
lyxc34
Rank: 2
等 级:论坛游民
帖 子:139
专家分:50
注 册:2011-7-3
收藏
得分:0 
三个表,cjb是成绩表,kcb是课程表,xsb是学生表。

[ 本帖最后由 lyxc34 于 2011-7-17 00:14 编辑 ]
2011-07-16 23:28
lyxc34
Rank: 2
等 级:论坛游民
帖 子:139
专家分:50
注 册:2011-7-3
收藏
得分:0 
回复 12楼 qingfameng
新表用ALTER TABLE ADD加入的新字段默认的是在最后一个字段加,这对加入总分平均分可能有用,不过对在已有字段中间插入字段就没用了,系统不知道有没有提供更改字段顺序的命令或函数,本来用MODIFY STRUCTURE可以的,可惜运行时不能用。能像INSERT那样就好了。
2011-07-16 23:36
lyxc34
Rank: 2
等 级:论坛游民
帖 子:139
专家分:50
注 册:2011-7-3
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册

左边上面是通过选择显示班级成绩单,中间是通过输入查询个人成绩,下面是其他成绩查询。

[ 本帖最后由 lyxc34 于 2011-7-16 23:53 编辑 ]
2011-07-16 23:41
lyxc34
Rank: 2
等 级:论坛游民
帖 子:139
专家分:50
注 册:2011-7-3
收藏
得分:0 
以下是引用TonyDeng在2011-7-16 23:37:31的发言:

雖然現在的硬盤很便宜,但也最好不要繌這樣折騰它吧。

我也觉得,特别是像学校还有很多上个世纪的联想14寸品牌老爷机,所以还是保险点。
2011-07-16 23:46
lyxc34
Rank: 2
等 级:论坛游民
帖 子:139
专家分:50
注 册:2011-7-3
收藏
得分:0 
  不知道大家有没研究过9.0目录下的VFPXTAB.prg,功能应该和EXCEL的转置类似,不过又好像不一样,有点看不懂,只在交叉表查询里面看懂了SQL语句。
  不知道能不能修改一下,只对指定的字段进行交叉表输出,然后添加其他字段。
2011-07-16 23:51
快速回复:请教两个修改表结构和组合框数据绑定的问题
数据加载中...
 
   



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

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