您的位置:程序门 -> vb -> 基础类



界面当中的十几个datacombo连接到十几个adodc控件,导致内在消耗非常严重!


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


界面当中的十几个datacombo连接到十几个adodc控件,导致内在消耗非常严重!
发表于:2007-02-02 20:51:25 楼主
有没有什么办法可以使得adodc的查询在用户点击datacombo的时候进行?
发表于:2007-02-02 20:54:441楼 得分:0
不用控件,直接用代码写,可参考有关ado文章
发表于:2007-02-02 20:59:252楼 得分:0
但是软件的整体已经做出来了,后期发现了这样的一个性能上面的一个瓶颈,怎样解决?

比如说adodc的某个属性,使用在必需adodc进行查询的时候进行查询,在界面生成的时候不进行查询??
发表于:2007-02-02 21:24:033楼 得分:0
这样修改应该不是很麻烦啊,用ado控件的弊端太多,不如利用ado对象,和recordset对象
来处理,比较简单,只要设置下连接字符串就行了
       
'窗体加载时  
        '若学院信息表非空,则添加入combo控件并显示第一条记录信息
        cmbxymc.clear
        do   while   not   rsxyxxb.eof
              cmbxymc.additem   trim(rsxyxxb.fields( "xymc ").value)
              rsxyxxb.movenext
        loop
        if   cmbxymc.listcount   >   0   then
              cmbxymc.listindex   =   0
        end   if

     
  点击combo控件时
private   sub   cmbxymc_click()
  if   cmbxymc.listcount   >   0   then
        if   cmbxymc.listindex   > =   0   then
              '选定条目后,执行的代码
              '可以使用filter属性进行过滤,相当于查询
              ........
        end   if
  end   if
end   sub
发表于:2007-02-03 10:44:264楼 得分:0
但是我的程序已经是最后阶段了,所有的界面元素的查询都是使用adodc控件来的,改动量太大,并且风险太大.
发表于:2007-02-03 10:45:185楼 得分:0
还有就是有没有什么办法使用adodc控件在你界面设计的时候不进行连接,而在你运行的时候进行连接??
发表于:2007-02-04 22:38:496楼 得分:0
要使adodc控件界面设计的时候不进行连接,而在运行的时候进行连接只需将recordsource等属性清空,运行的时候再设置就行了。
发表于:2007-02-04 22:49:057楼 得分:0

设置adodc1的连接字符串和数据源

adodc1.connectionstring   =   "provider=microsoft.jet.oledb.4.0;data   source=数据库路径及名称;persist   security   info=false "
adodc1.recordsource   =   "select   *   from   表名称   "
adodc1.refresh
如此之后adodc1即可得到数据
发表于:2007-02-04 22:52:538楼 得分:0
你可以修改一下,只用一个adodc控件再每次更新数据源就行了
发表于:2007-02-05 08:41:219楼 得分:0
啊啊  
不建议用adodc控件,灵活性差,耗费资源太多
adodc控件   只是封装了一些   ado对象的功能
改动起来不困难,也没啥风险  
发表于:2007-02-05 12:23:5510楼 得分:0
我当年写程序的时候,也碰到这个问题,但是我没有写下去,因为我知道这是不合理的,也是很笨的方法。

这种事情以后千万不要说出来,更不要做了出来,做了也不要说出来,更不要说是程序收尾阶段,会让同行或c#等语言高手笑死的


快速检索

最新资讯
热门点击