| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1176 人关注过本帖
标题:这程序好象却没有能够实现循环
只看楼主 加入收藏
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 
回复:(simpson)可以的话修改下表的结构
帮我修改下,好么?

这temp表怎么建立呢?
2007-08-25 11:45
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 
就不能帮帮我么?

好象仅仅是个循环问题啊?

我感觉代码没有其他错误啊?
2007-08-26 14:10
simpson
Rank: 3Rank: 3
等 级:论坛游民
威 望:7
帖 子:863
专家分:17
注 册:2006-11-16
收藏
得分:0 
For jj = 1 To 9
mysql = "Select [j(" & jj & ")] from fl2 where [z(" & jj & ")]='银行存款' "
If Conn.Execute(mysql).EOF = False And IsNull(Conn.Execute(mysql)(0)) = False Then
Set Rst = Conn.Execute(mysql)
End If
Next jj
If Rst.BOF = True Then
MsgBox "no!"
Else
Set DataGrid1.DataSource = Rst


这段有问题, Set DataGrid1.DataSource = Rst 中的Rst 只是最后一次 Set Rst = Conn.Execute(mysql) 赋值到的记录, 并不是全部循环查询到的记录的累加,
我不知道是否有让多次查询到的记录进行记录合并累加的功能或方法, 如果没有,要实现你想要的功能恐怕只能重新设计你的表, 或着建个查询表 或着不要用DataGrid控件做显示数据,后两个记录很多时效率都很差,不管是自己做练习还是工作,都不应该用低效率的方法,

一个设计合理优秀的表可以让你的开发变的轻松顺手, 一个设计不怎么好的表却能让你的开发搅尽脑汁也不的其解..

你觉得呢?

全国最大的 Java专业电子书免费分享[url]http:///in.asp?id=xrmao[/url]
2007-08-26 14:32
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 
Execute()好象是合计函数吧?

显示函数怎么表示啊?

我也感觉是这样的,但是如果按照一般的表设计,字段为一个可确定的值的话,那问题就简单多了!

因为分录录入和其他是不确定的!

所以这表很难采用普通的设计方案!

看看用EXCEL来试试达到自己的目的吧!
2007-08-26 15:18
simpson
Rank: 3Rank: 3
等 级:论坛游民
威 望:7
帖 子:863
专家分:17
注 册:2006-11-16
收藏
得分:0 
Execute()执行对远程服务器的请求  用来执行SQL语句的

全国最大的 Java专业电子书免费分享[url]http:///in.asp?id=xrmao[/url]
2007-08-26 15:23
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 

我想用表之间的关系来达到目的,

FL2表为47个字段;

用FL3表来显示所需要的表内容,字段为:N(日期,FL2表也有相应的N字段),ZY(摘要,FL2表也有相应的ZY(1~9)字段),J(借方数额,FL2表也有相应的J(1~9)字段),D(贷方数额,FL2表也有相应的D(1~9)字段),

书上对关系这方面的描述过于简单,仍然看不明白!

2007-08-26 15:25
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 

这就是的!请看:

For i2 = 1 To 9
s2 = "Select Sum([j(" & i2 & ")]) from fl2 where [z(" & i2 & ")]='银行存款' GROUP BY [Z(" & i2 & ")]"
If conn.Execute(s2).EOF = False And IsNull(conn.Execute(s2)(0)) = False Then
a2 = a2 + conn.Execute(s2)(0)
End If
Next

这是另外一位高手提供给我的,累计相加求和的,

现在想把这些一一显示出来,

2007-08-26 15:30
西风独自凉
Rank: 8Rank: 8
等 级:贵宾
威 望:43
帖 子:3380
专家分:28
注 册:2007-8-2
收藏
得分:0 
你自己调试一下。。看看。。rs.fields.count 的值到底是多少就知道。。了

2007-08-27 08:18
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 
能告诉我如何解决么?
2007-08-27 09:01
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 

Private Sub Command1_Click()
Dim jj, ss, ii As Integer
Dim mysql As String
For jj = 1 To 9
mysql = "select n,zy1,[z(" & jj & ")],[j(" & jj & ")],[d(" & jj & ")] from fl2 where [z(" & jj & ")]='银行存款' "
If Conn.Execute(mysql).EOF = False And IsNull(Conn.Execute(mysql)(0)) = False Then
Set Rst = Conn.Execute(mysql)

End If
Next jj

Set DataGrid1.DataSource = Rst

End Sub

就一个结果,仍然无法实现循环???

2007-09-02 12:43
快速回复:这程序好象却没有能够实现循环
数据加载中...
 
   



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

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