您的位置:程序门 -> vb -> 数据库(包含打印,安装,报表)



查询结果用datagrid显示


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


查询结果用datagrid显示
发表于:2007-12-17 12:23:00 楼主
我做了一个查询,这个sql语句由用户自己根据自己的需要输入到一个text控件中,然后点击按钮执行查询过程,结果在datagrid中显示。这些都已实现。
现在我想问的问题是:当用户输入如select   *   from   table句时,如何限制这个table的最后两个field内容不在datagrid中显示,不知如何做?可以设置datagrid吗?
当然不能用select   field1,field2,...fieldn   from   table   来实现。因为用户是不会记住那么多field   name.   而且用户也一定会用select   *   from   table这样的语句的。谢谢!

private   sub   cmdEXECute_click()
        on   error   goto   err_EXECute
        dim   strsql   as   string
        dim   rstsql   as   new   adodb.recordset
        if   trim(txtsql.text)   =   ""   then
                msgbox   "sql   text   is   blank.   please   check!",   vbokonly,   "prompt"
                exit   sub
        end   if
        rstsql.cursorlocation   =   aduseclient
        strsql   =   trim(txtsql.text)
        strsql   =   lcase(strsql)
        rstsql.open   strsql,   cnn,   adopenkeyset,   adlockpessimistic
        set   dgdexplorer.datasource   =   rstsql
        dgdexplorer.refresh
        set   rstsql   =   nothing
        exit   sub
err_EXECute:
        msgbox   "sql   syntax   error!   please   check!",   vbokonly   +   vbexclamation,   "warning"
        exit   sub
end   sub
发表于:2007-12-17 13:47:341楼 得分:0
为什么你要让用户自己去写sql语句呢?而不做一个界面让用户选择要查询的内容?然后由程序生成sql语句。而且既然用户使用sql都没有障碍了,用户怎么就不能够seletc   *之后再select   fieldn显示自己想要的任意内容呢?你的需求不明确
发表于:2007-12-17 14:34:252楼 得分:0
我的本意是让用户根据自己的要求,随心所欲的查询。
不过你这也是一个思路。谢谢!
发表于:2007-12-17 14:43:473楼 得分:0
做一个界面让用户选择,可以实现count,sum之类的吗?可能对我有一定的难度。能否给一些思路或其他?


快速检索

最新资讯
热门点击