在学生基本信息维护这一窗体里,有一个组合查询,通过组合查询我们可以随意选择不同的条件,进而查询到自己想要查询的内容。

从上图我们不难看出,查询的条件是比较复杂一些,而且一个条件的设定就必须包含三个控件的内容,三个条件的关系分为两种,即“与””或”。且其在选择中有一定的顺序:只有第一行的条件全部填好,才可以选择第一个组合关系;同理,只有前两行的条件及第一个组合关系按顺序填好,才可以选择第二个组合关系,进而填写第三行条件。

当然,还有一点不得不提的是,当字段名为“性别”时,操作符只能选择“=”或“<>”;字段名为日期或者时间时,查询内容要有格式要求,其他优化内容同理。

下面是流程图:

代码如下:

Dim c(2) As Boolean   '判断条件中的格子中是否有数据'判断三个条件对应的框中是否为空If cobField1.Text = "" Or cobSymbol1.Text = "" Or txtContent1.Text = "" ThenElsec(0) = True         '第一栏不为空If cobField2.Text = "" Or cobSymbol2.Text = "" Or txtContent2.Text = "" ThenElsec(1) = True         '第二栏不为空If cobField3.Text = "" Or cobSymbol3.Text = "" Or txtContent3.Text = "" ThenElsec(2) = True         '第三栏不为空End IfEnd IfEnd IftxtSQL = "select * from student_Info where "'组合查询所有的情况If c(2) ThenIf cobRelation2.Text = "或" Then'0 or 1 or 2txtSQL = txtSQL & CField(cobField1.Text) & CSymbol(cobSymbol1.Text) & "'" & CContent(txtContent1.Text) & "'" & "or " & CField(cobField2.Text) & CSymbol(cobSymbol2.Text) & " '" & CContent(txtContent2.Text) & "'" & "or " & CField(cobField3.Text) & CSymbol(cobSymbol3.Text) & " '" & CContent(txtContent3.Text) & "'"Set mrc = ExecuteSQL(txtSQL, Msgtext)Call Addmrc.CloseElseIf cobRelation2.Text = "与" Then'0 and 1 and 2txtSQL = txtSQL & CField(cobField1.Text) & CSymbol(cobSymbol1.Text) & "'" & CContent(txtContent1.Text) & "'" & "and " & CField(cobField2.Text) & CSymbol(cobSymbol2.Text) & " '" & CContent(txtContent2.Text) & "'" & "and " & CField(cobField3.Text) & CSymbol(cobSymbol3.Text) & " '" & CContent(txtContent3.Text) & "'"Set mrc = ExecuteSQL(txtSQL, Msgtext)Call Addmrc.CloseElseMsgBox "请输入第二个组合条件"End IfEnd IfElseIf c(1) ThenIf cobRelation1.Text = "或" Then'0 or 1txtSQL = txtSQL & CField(cobField1.Text) & CSymbol(cobSymbol1.Text) & "'" & CContent(txtContent1.Text) & "'" & "or " & CField(cobField2.Text) & CSymbol(cobSymbol2.Text) & " '" & CContent(txtContent2.Text) & "'"Set mrc = ExecuteSQL(txtSQL, Msgtext)Call Addmrc.CloseElseIf cobRelation1.Text = "与" Then'0 and 1txtSQL = txtSQL & CField(cobField1.Text) & CSymbol(cobSymbol1.Text) & "'" & CContent(txtContent1.Text) & "'" & "and " & CField(cobField2.Text) & CSymbol(cobSymbol2.Text) & " '" & CContent(txtContent2.Text) & "'"Set mrc = ExecuteSQL(txtSQL, Msgtext)Call Addmrc.CloseElseMsgBox "请选择组合关系"End IfEnd IfElseIf c(0) Then'0txtSQL = txtSQL & CField(cobField1.Text) & CSymbol(cobSymbol1.Text) & "'" & CContent(txtContent1.Text) & "'"Set mrc = ExecuteSQL(txtSQL, Msgtext)Call Addmrc.CloseElseMsgBox "请输入第一条件"End IfEnd IfEnd If

机房收费--组合查询相关推荐

  1. 二见钟情之组合查询(vb.net版)

    第一遍做机房系统组合查询的时候用的是VB6.0,当时就一个感觉:乱.当时做的时候稀里糊涂的,好不容易应付了事,松了口气.这次是第二遍,用VB.NET还没开始做呢,心里就开始打鼓了,不过做完了以后,发现 ...

  2. vb.net机房收费系统之组合查询

    我个人一直认为,组合查询是机房收费系统的一个难点,尤其是用到三层之后,如果要为组合查询中的每一个查询建立一个显然是太麻烦了. 下面介绍一下我的方法,对大家起个参考作用. 我将该表中可输入的内容定义为一 ...

  3. VB.NET版机房收费系统---组合查询

    查询的意思就是查找,寻找,指在某一个或几个地方找出自己所要的信息,假如我想搜索一下我自己写的博客,名字叫做初雪之恋,我在百度的搜索框中输入丁国华三个字,会有怎样的惊喜等着我? 啊哦,这个信息并不是我想 ...

  4. 【机房收费系统】---组合查询

    组合查询我们用到了Student_Info,首先你要告诉自己,它一点都不难,稍微用心下,就很容易明 白其中的道理了. 一.代码思路0-3 0.首先,老规矩,先判断是否为空. 1.当没有组合关系时,直接 ...

  5. 机房系统(九)——【组合查询】

    机房收费系统首次让小编接触到了"组合查询".到现在为止,"组合查询"的类型,大概接触到了两种方式,一是单一表多个字段连接的查询:二是多个表的连接查询.机房收费系 ...

  6. VB查询数据库之写入数据库——机房收费系统总结(三)

         在机房收费系统中,新注册的用户,更改的密码,上机下级记录,上机收费记录等等都要写入数据库,这样,后面的查询才能生效.像数据库中写入数据,首先,找到你要写入数据的数据库中的表,在表中建立新的行 ...

  7. 【机房重构】组合查询--存储过程

    定义 存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参 ...

  8. VB查询数据库之结账——机房收费系统总结(五)

    对于机房收费的结账,我感觉是所有窗体中,最难的一个.这个窗体我真的做了好多天.它的难度系数我感觉是最高的. 首先,你要理清上机时间和收费标准的关系,在预备时间中,是不收费的. 其次,在超过预备时间,一 ...

  9. 蠡测机房重构之组合查询

    [写在前边的话] 在进行机房重构的过程中,设计组合查询的窗体,真的是学到了很多东西.以管窥豹,以蠡测海,所以想小小的总结一下,缅怀这一寸寸学习的时光. [设计模式之模板方法的运用] 模板方法模式--在 ...

最新文章

  1. P1087 FBI树
  2. 运用UE和Blocks,仅用两周打造一个VR游戏(52VR完整版译文)
  3. 【算法数据结构Java实现】Java实现单链表
  4. Android开发系列(三)
  5. java 回调(callback)函数简介.
  6. python getattr函数_[转]Python中的getattr()函数详解
  7. JZOJ__Day 1:【NOIP普及模拟】JABUKE
  8. 云计算对于传统软件工程的影响
  9. jquery的animate()方法也可设置非css属性
  10. SqlConnetction类
  11. 机器学习之数据归一化
  12. 国庆通知:地球不爆炸,CSDN 不放假!
  13. Django开发密码管理表实例【附源码】
  14. H3CTE讲师分享H3C认证培训实验9 IP基础
  15. 备战蓝桥杯(4)——第九届蓝桥杯嵌入式省赛赛题实战
  16. TPP-Fe(3+)四苯基卟啉铁cas16456-81-8性质说明
  17. 共享充电,是雪中送炭还是暗藏危险?——恶意充电宝实验
  18. 【FF14】工匠配方爬取
  19. 两张显卡在win10上如何使用
  20. 如何利用动态代理IP来做SEO(网络营销)

热门文章

  1. Hadoop Distributed File System 简介
  2. 【OpenCV3】图像的读取、显示与保存
  3. 背完这444句英语,你的口语绝对不成问题了
  4. Linux文本处理三剑客之sed
  5. 如何对ABAP SE80 workbench做增强
  6. mssql sqlserver in 关键字在值为null的应用举例
  7. 进程间通信——POSIX 有名信号量与无名信号量
  8. 16.1 Tomcat介绍16.2 安装jdk16.3 安装Tomcat
  9. 新年新征程——写在“微软中国研发集团”更名之际
  10. Statement与PreparedStatement区别