(三)查询功能-机房收费系统

本文详细介绍了如何在VB中实现机房收费系统的查询功能,包括卡号验证、信息查询、数据显示等关键步骤,并提供了具体的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前提:

机房最先熟悉的是查询,,通过查询,渐渐地明白了机房的整个布局,本来很畏惧桥机房,但有了开始的途径就觉得一切可以进行了。接下来是我对查询的简单理解

内容:

查询是最常见的,所以要熟悉以邪见的数据库查询语句的书写方式,慢慢的熟悉数据库。

vb中数据库查询语句


Private Sub cmdOK_Click()
    Dim txtSQL As String
    Dim MsgText As String
    Dim mrc As ADODB.Recordset 
    
    '任务一:判断卡号是否为空
    If txtCardNo.Text = "" Then
         MsgBox "请输入卡号!", vbOKOnly + vbExclamation, "警告"
    Else
    '任务二:查询卡号是否存在
        txtSQL = "select * from student_Info where cardno = " & "'" & Trim(txtCardNo.Text) & "'"
        Set mrc = ExecuteSQL(txtSQL, MsgText)'        对学生表中的信息进行查询,并返回信息
        If mrc.EOF = True Then
    '        最后一条信息存在,空值存在,即卡号不存在
            MsgBox "卡号不存在,请重新输入卡号!", vbOKOnly + vbExclamation, "警告"
        Else


对查询语句的理解

1.定义两个字符串 TXTsql 和 msgtext 用来存放查询语句即返回记录

2.通过ExecuteSQL函数进行在顺库中进行查询

3.set 的用法 

set 一般是对vb中除基本数据类型意外的变量进行赋值的语句。set用法连接

(还有其他的使用方法 Set 表示将对象引用赋给变量或属性 如果=号左边的变量不是以下类型,就要在前面加上set
string、long、integer、single、double、Byte、boolean、date、Currency、Variant、数组、Type
其中Type比较特殊,因为它是用来进行自动以变量类型的,用它定义的变量类型的实例进行赋值操作时,无需set)

4.对TXTSQL语句的理解

双引号的作用:vb可以识别为字符串,

连接符& 前后必须有空格

单引号' 在数据库需要用到的

接下来是数据库查询的语句: select * from 表名称 where 查询的条件,

5.定义一个数据库记录集类型的变量

4.显示问题

文本框显示,不能修改


'任务三:显示信息
           
                txtSID.Text = mrc.Fields(1)
                txtName.Text = mrc.Fields(2)
                txtSex.Text = mrc.Fields(3)
                txtDept.Text = mrc.Fields(4)
                txtGrade.Text = mrc.Fields(5)
                txtClass.Text = mrc.Fields(6)
                txtMoney.Text = mrc.Fields(7)
                txtExplain.Text = mrc.Fields(8)
                txtState.Text = mrc.Fields(10)
                MsgBox "成功!", vbOKOnly + vbExclamation, "提示"
        End If
    End If


使用MSHFlexGrid 


'任务三:显示信息
            With myflexGrid
                .Rows = 1
'                .CellAlignment = 4
    '            居中显示
                .TextMatrix(0, 0) = "卡号"
                .TextMatrix(0, 1) = "充值金额"
                .TextMatrix(0, 2) = "充值时间"
                .TextMatrix(0, 3) = "充值日期"
                .TextMatrix(0, 4) = "充值老师"
               
                
    '            任务四:显示查询数据
    
                Do While Not mrc.EOF
    '                一直执行到最后条记录
                    .Rows = .Rows + 1
    '                可防止空白行的出现
'                    .CellAlignment = 4
    '                居中显示
                    .TextMatrix(.Rows - 1, 0) = Trim(mrc.Fields(2))
                    .TextMatrix(.Rows - 1, 1) = Trim(mrc.Fields(3))
                    .TextMatrix(.Rows - 1, 2) = Trim(mrc.Fields(4))
                    .TextMatrix(.Rows - 1, 3) = Trim(mrc.Fields(5))
                    .TextMatrix(.Rows - 1, 4) = Trim(mrc.Fields(6))


导出为excel

Private Sub cmdEdit_Click()
If myflexgrid.Text = "" Then
    MsgBox "没有记录可以导出!", vbOKOnly + vbExclamation, "提示"
Else
    On Error GoTo Err_Proc
    Set xlApp = CreateObject("Excel.Application") '调用execel程序
    Set xlBook = xlApp.Workbooks.Add '添加工作薄
    Set xlSheet = xlBook.Worksheets(1) '添加工作单元
  
    '向工作单元中添加数据
    Dim i As Long
    Dim j As Integer
      
    With frmInqCollectMoney.myflexgrid
        For i = 0 To .Rows - 1 '行依次增加从0开始 外循环,外循环每增加1,内循环循环一周
            For j = 0 To .Cols - 1 '一行有.cols列 从0开始循环
                xlSheet.Cells(i + 1, j + 1).Value = "'" & .TextMatrix(i, j) '工作表中采用(x,y)坐标,都从1开始
            Next j
        Next i
    End With
    xlApp.Visible = True '设定Excel程序可见
    Screen.MousePointer = vbDefault '鼠标指针设为默认状态
    Exit Sub
Err_Proc:
    Screen.MousePointer = vbDefault '鼠标指针设为默认状态
    MsgBox "请确认您的电脑已安装Excel,或是否安装正确!", vbExclamation, "机房收费系统"
End If
End Sub


会出现的问题,及提示


数据库连接部分打错了字母或者未连接数据库

实时错误会提示问题出在哪里,在数据库语句附近。改正即可。


总结:

机房学习的时候需要不断重复,多了就会了,重要的是敢于去做,机房查询和学生的查询是一样的所以只要去做就可以了。


评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值