⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmquerygrade.frm

📁 VB ACCESSS数据库课程设计
💻 FRM
字号:
VERSION 5.00
Object = "{67397AA1-7FB1-11D0-B148-00A0C922E820}#6.0#0"; "MSADODC.OCX"
Object = "{CDE57A40-8B86-11D0-B3C6-00A0C90AEA82}#1.0#0"; "MSDATGRD.OCX"
Begin VB.Form frmquerygrade 
   Caption         =   "查询成绩"
   ClientHeight    =   5115
   ClientLeft      =   60
   ClientTop       =   345
   ClientWidth     =   6300
   LinkTopic       =   "Form1"
   ScaleHeight     =   5115
   ScaleWidth      =   6300
   StartUpPosition =   3  '窗口缺省
   Begin VB.CommandButton cmdquery 
      Caption         =   "查询"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   14.25
         Charset         =   134
         Weight          =   700
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   465
      Left            =   4035
      TabIndex        =   12
      Top             =   3120
      Width           =   1815
   End
   Begin VB.CommandButton cmdall 
      Caption         =   "全部"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   14.25
         Charset         =   134
         Weight          =   700
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   465
      Left            =   4035
      TabIndex        =   11
      Top             =   3600
      Width           =   1815
   End
   Begin VB.CommandButton cmdexit 
      Caption         =   "退出"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   14.25
         Charset         =   134
         Weight          =   700
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   465
      Left            =   4035
      TabIndex        =   10
      Top             =   4080
      Width           =   1815
   End
   Begin VB.Frame Frame1 
      Caption         =   "查询方式"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   12
         Charset         =   134
         Weight          =   700
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ForeColor       =   &H00404040&
      Height          =   2295
      Left            =   240
      TabIndex        =   1
      Top             =   2640
      Width           =   3465
      Begin VB.CheckBox chkquery 
         Caption         =   "按学号:"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   9
            Charset         =   134
            Weight          =   700
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         ForeColor       =   &H00404040&
         Height          =   255
         Index           =   0
         Left            =   240
         TabIndex        =   9
         Top             =   360
         Width           =   1125
      End
      Begin VB.CheckBox chkquery 
         Caption         =   "按姓名:"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   9
            Charset         =   134
            Weight          =   700
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         ForeColor       =   &H00404040&
         Height          =   255
         Index           =   1
         Left            =   240
         TabIndex        =   8
         Top             =   840
         Width           =   1080
      End
      Begin VB.CheckBox chkquery 
         Caption         =   "按课程:"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   9
            Charset         =   134
            Weight          =   700
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         ForeColor       =   &H00404040&
         Height          =   255
         Index           =   2
         Left            =   240
         TabIndex        =   7
         Top             =   1320
         Width           =   1125
      End
      Begin VB.CheckBox chkquery 
         Caption         =   "按班级:"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   9
            Charset         =   134
            Weight          =   700
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         ForeColor       =   &H00404040&
         Height          =   255
         Index           =   3
         Left            =   240
         TabIndex        =   6
         Top             =   1800
         Width           =   1080
      End
      Begin VB.TextBox txtno 
         Height          =   270
         Left            =   1350
         TabIndex        =   5
         Top             =   360
         Width           =   1695
      End
      Begin VB.TextBox txtname 
         Height          =   270
         Left            =   1350
         TabIndex        =   4
         Top             =   810
         Width           =   1695
      End
      Begin VB.ComboBox cbocourse 
         Height          =   300
         Left            =   1350
         TabIndex        =   3
         Top             =   1260
         Width           =   1695
      End
      Begin VB.ComboBox cboclass 
         Height          =   300
         Left            =   1395
         TabIndex        =   2
         Top             =   1755
         Width           =   1695
      End
   End
   Begin MSDataGridLib.DataGrid DataGrid1 
      Height          =   2295
      Left            =   240
      TabIndex        =   0
      Top             =   240
      Width           =   5820
      _ExtentX        =   10266
      _ExtentY        =   4048
      _Version        =   393216
      AllowUpdate     =   0   'False
      HeadLines       =   1
      RowHeight       =   15
      BeginProperty HeadFont {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ColumnCount     =   2
      BeginProperty Column00 
         DataField       =   ""
         Caption         =   ""
         BeginProperty DataFormat {6D835690-900B-11D0-9484-00A0C91110ED} 
            Type            =   0
            Format          =   ""
            HaveTrueFalseNull=   0
            FirstDayOfWeek  =   0
            FirstWeekOfYear =   0
            LCID            =   2052
            SubFormatType   =   0
         EndProperty
      EndProperty
      BeginProperty Column01 
         DataField       =   ""
         Caption         =   ""
         BeginProperty DataFormat {6D835690-900B-11D0-9484-00A0C91110ED} 
            Type            =   0
            Format          =   ""
            HaveTrueFalseNull=   0
            FirstDayOfWeek  =   0
            FirstWeekOfYear =   0
            LCID            =   2052
            SubFormatType   =   0
         EndProperty
      EndProperty
      SplitCount      =   1
      BeginProperty Split0 
         BeginProperty Column00 
         EndProperty
         BeginProperty Column01 
         EndProperty
      EndProperty
   End
   Begin MSAdodcLib.Adodc Adodc1 
      Height          =   375
      Left            =   3960
      Top             =   4560
      Visible         =   0   'False
      Width           =   2220
      _ExtentX        =   3916
      _ExtentY        =   661
      ConnectMode     =   0
      CursorLocation  =   3
      IsolationLevel  =   -1
      ConnectionTimeout=   15
      CommandTimeout  =   30
      CursorType      =   3
      LockType        =   3
      CommandType     =   1
      CursorOptions   =   0
      CacheSize       =   50
      MaxRecords      =   0
      BOFAction       =   0
      EOFAction       =   0
      ConnectStringType=   1
      Appearance      =   1
      BackColor       =   -2147483643
      ForeColor       =   -2147483640
      Orientation     =   0
      Enabled         =   -1
      Connect         =   "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=student.mdb;Persist Security Info=False"
      OLEDBString     =   "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=student.mdb;Persist Security Info=False"
      OLEDBFile       =   ""
      DataSourceName  =   ""
      OtherAttributes =   ""
      UserName        =   ""
      Password        =   ""
      RecordSource    =   ""
      Caption         =   "Adodc1"
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      _Version        =   393216
   End
End
Attribute VB_Name = "frmquerygrade"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim sql As String
Option Explicit

Private Sub chkquery_Click(Index As Integer)
'选中复选框时,焦点移至输入控件
If chkquery(Index).Value = vbUnchecked Then Exit Sub
Select Case Index
Case 0
txtno.SetFocus
Case 1
txtname.SetFocus
Case 2
cbocourse.SetFocus
Case 3
cboclass.SetFocus
End Select
End Sub

Private Sub cmdall_Click()
'sql查询语句
sql = "select 成绩.学号 as 学号,学籍.姓名 as 姓名,成绩.课程 as 课程,成绩.分数 as 分数,学籍.班级 as 班级 from 成绩,学籍 where 成绩.学号=学籍.学号 order by 成绩.学号"
Adodc1.RecordSource = sql
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1
End Sub

Private Sub cmdexit_Click()
Unload Me
End Sub

Private Sub cmdquery_Click()
 Dim sql1 As String
    Dim i As Integer
    Dim sqlA(3) As String
    
    '字符串数组存放各种查询条件,下标与复选框控件数组索引对应。
    ' SQL 语句中使用 Like 运算符、% 通配符可实现模糊查询。
    sqlA(0) = " 成绩.学号 Like '%" & Trim$(txtno.Text) & "%'"
    sqlA(1) = " 姓名 Like '%" & Trim$(txtname.Text) & "%'"
    sqlA(2) = " 课程 = '" & Trim$(cbocourse.Text) & "'"
    sqlA(3) = " 班级 Like '%" & Trim$(cboclass.Text) & "%'"
    
    sql1 = ""   '用于存放 SQL 语句中 WHERE 子句的条件
    '循环遍历各查询条件复选框
    For i = 0 To chkquery.Count - 1
        If chkquery(i).Value = vbChecked Then   '若某复选框被选中,
            If sql1 = "" Then                   '若只有一个复选框被选中,
                sql1 = sqlA(i)                  '利用字符串数组加入一个条件;
            Else                                '若有多个复选框被选中,
                sql1 = sql1 & " AND " & sqlA(i) '用 AND 运算符加入多个条件。
            End If
        End If
    Next
    
    '退出循环后,若条件字符串为空,说明未选中任何复选框,
    '执行“全部”按钮单击事件过程的语句,显示全部记录。
    If sql1 = "" Then
        Call cmdall_Click
        Exit Sub
    End If
    
    'SELECT 语句 + WHERE 子句的条件字符串形成完整的 SQL 语句
    sql = "SELECT 成绩.学号 AS 学号,姓名,课程,分数,班级 " & _
          " FROM 成绩,学籍 WHERE  成绩.学号=学籍.学号 AND " _
          & sql1 & " ORDER BY 成绩.学号"
    
    Adodc1.RecordSource = sql '刷新Adodc1
    Adodc1.Refresh
    
    If Adodc1.Recordset.BOF Then    '若记录集为空
        MsgBox "对不起,没有您所要查找的记录。", vbInformation
        Exit Sub
    End If
    
    Set DataGrid1.DataSource = Adodc1 '重新绑定数据网格控件End Sub
End Sub

Private Sub Form_Load()
'填充课程组合框,分组子句(group by)筛选重复课程
sql = "select 课程 from 成绩 group by 课程 having 课程<>NULL and 课程<>''"
Adodc1.RecordSource = sql
Adodc1.Refresh
With Adodc1.Recordset
Do Until .EOF
cbocourse.AddItem .Fields("课程").Value
.MoveNext
Loop
End With
Call addclassitem(cboclass)
DataGrid1.AllowUpdate = False
End Sub

Private Sub Form_Unload(Cancel As Integer)
frmMain.Show
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -