Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共5 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:VBA连接数据库的问题

1楼
jianshi2020 发表于:2013/8/28 16:37:35

http://www.weistock.com/bbs/dispbbs.asp?boardid=5&Id=30622&star=1

看着里面的教程后,我自己写了一段查询的代码

 

sub sjk_button_click()
  call DataInsert()
  Set adoConn=CreateObject("Adodb.Connection")
  '连接数据库(数据指向是金字塔安装目录下的test.mdb,也可以自己更改想要的路径)
   adoConn.Open "Provider=MicroSoft.Jet.OLEDB.4.0;Data Source=test.mdb"
  strSqlread="select max(id) as stockdate,price as 价格,sum(buyvol) as 主买,sum(vol) as 主卖,round(sum(buyvol)/sum(vol),3) as 竞买率 from ada group by price; "
  Set rstTmp=CreateObject("ADODB.RecordSet")
   rstTmp.open strSqlread,adoConn
   aa=rstTmp("价格")
   sjk_text1=aa
   msgbox aa
  end sub

 

这里当我点击按钮结束后,为什么只出来第一个数据,而之后的97条记录都没有查到?

 

 

 

2楼
王锋 发表于:2013/8/28 16:56:40

你要使用循环语句来读取数据库表的

3楼
jianshi2020 发表于:2013/8/29 8:43:59

用FOR EACH怎么迭代RStTMP 啊?

 

4楼
jianshi2020 发表于:2013/8/29 8:59:23

While Not rstTmp.EOF

aa=rstTmp("价格")
       sjk_text1=aa
   msgbox aa
   Wend

这个和FOR 循环都用了,

while不但是死循环,而且的出来的永远是第一条数据。

for 循环了98次,并且得出来的也是第一条数据,根本没有往下读取。

AA=RSTMP('')这句话后面还需要加什么?

5楼
jianshi2020 发表于:2013/8/29 9:44:05
用RSTTMP.MOVENEXT,已经查到了
共5 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.03516 s, 2 queries.