CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

两个问题。。。

楼主SANVII()2000-04-12 19:15:00 在 VB / 基础类 提问

1。如何把一个数据库中特定的数据加入ComboBox的list项中,(我是用data控件连接  
  一个mdb数据库,combo的控件在运行时其下拉列表应显示数据库的数据列)。  
  2。如何动态运行数据库,对recordset进行操作,(我用过adodc,它好象不能进行汇总,如count,sum等等).  
  以上问题请给出例子程序。 问题点数:130、回复次数:6Top

1 楼SANVII()回复于 2000-04-12 21:00:00 得分 0

哦,我看到lin.929.un1.csdn众高手了,帮帮我。多谢多谢!!!Top

2 楼Un1()回复于 2000-04-12 21:37:00 得分 65

这是MSDN的ADO教程部分:  
   
  Public   Sub   main()  
   
  Dim   conn   As   New   ADODB.Connection  
  Dim   cmd   As   New   ADODB.Command  
  Dim   rs   As   New   ADODB.Recordset  
  '   步骤   1,创建一个数据连接  
  conn.Open   "DSN=pubs;uid=sa;pwd=;database=pubs"  
  '   步骤   2,设置数据命令  
  Set   cmd.ActiveConnection   =   conn  
  cmd.CommandText   =   "SELECT   *   from   authors"  
  '   步骤   3,打开数据  
  rs.CursorLocation   =   adUseClient  
  rs.Open   cmd,   ,   adOpenStatic,   adLockBatchOptimistic  
   
  '   步骤   4,内容可选,看你的需要  
  rs!au_lname.Properties("Optimize")   =   True  
  rs.Sort   =   "au_lname"  
  rs.Filter   =   "phone   LIKE   '415   5*'"  
  rs.MoveFirst  
  Do   While   Not   rs.EOF  
          Debug.Print   "Name:   "   &   rs!au_fname   &   "   ";   rs!au_lname   &   _  
                  "Phone:   ";   rs!phone   &   vbCr  
          rs!phone   =   "777"   &   Mid(rs!phone,   5,   11)  
          rs.MoveNext  
   
          ’可以再此把字段加入到Combox  
          Combo1.AddItem   rs("au_fname")  
   
  Loop  
   
  End   Sub  
   
  Top

3 楼SANVII()回复于 2000-04-12 21:56:00 得分 0

关于问题1。我是  
  for   i   =   data1.recordset.bof   to   data1.recordset.eof  
          combo1.additem   (i)  
  next  
  但VB提示data1.recordset未说明,能指点我吗?Top

4 楼SANVII()回复于 2000-04-12 22:12:00 得分 0

关于问题2。我是在form_load中设  
  adodc.recordsource="select   *   from   table"  
  然后我想再次查询,sql语句为"select   count(A),sum(B)   from   table  
  where   X=X   group   by   C",但msHflexgrid不能显示(或者是adodc出错?)  
  另不能用“with   club"这种sql语法。。。。。。Top

5 楼SANVII()回复于 2000-04-13 21:27:00 得分 0

我在静静的等,可我也等得很久了。能否给我看看我错在哪?Top

6 楼major2()回复于 2000-04-14 00:21:00 得分 65

观于你最后的提问,可能这个对你   有点用:  
  一、用做MSHFLEXGRID的数据源的记录集不能用ADODB.RECORDSET,而是要这样写才行:  
      Dim   rs   as   ADODB.Recordset  
   
      set   rs=new   recordset         '注意,这里不能加ADODB.这样的限定,一定要象这样写  
      rs.cursorlocation=adUseClient  
      rs.cursortype=adreadonly  
      rs.locktype=addynamic  
   
  二、您的SQL语句写得好象有点问题,反正我是看不懂里面那句X=X的WHERE子句是干什么用的,还有COUNT(A)是不是应该写成COUNT(C)或者干脆就是COUNT(*)  
   
  三、如果你用的是SQL   SERVER的数据库,那么WITH   CUBE肯定是可以用的,ACCESS就不清楚了,请你自己查一下在线帮助。但是用了以后会在统计行里出现NULL值,所以不能直接用做MSHFLEXGIRD的数据源,否则会出现“非法使用NULL值”的错误,要使用ISNULL()函数先将那些NULL值变成有效的数据才能绑定到网格里面去。Top

相关问题

  • 两个问题
  • 两个问题:
  • 两个问题。。。。。。。。。。。。
  • 两个问题!
  • 两个概念
  • 两个问题
  • 两个问题~~
  • 两个问题???
  • 两个问题?
  • 两个form………………………………

关键词

  • 数据
  • 数据库
  • sql
  • null
  • rs
  • recordset
  • adodb
  • adodc
  • 步骤
  • au

得分解答快速导航

  • 帖主:SANVII
  • Un1
  • major2

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo