学生系统之增(二):添加班级信息流程

这里写图片描述

第一步:信息加载

组合框内添加信息(AddItem属性)

Private Sub Form_Load()
    comboGrade.AddItem "初中一年级"
    comboGrade.AddItem "初中二年级"
    comboGrade.AddItem "初中三年级"
    comboGrade.AddItem "高中一年级"
    comboGrade.AddItem "高中二年级"
    comboGrade.AddItem "高中三年级"

End Sub

第二步:文本框判断

2.1 判断各个文本框有无文本(无文本弹出提示,有文本进入第三步)

If Not Testtxt(txtClassno.Text) Then
        MsgBox "请输入班号!", vbOKOnly + vbExclamation, "警告"
        txtClassno.SetFocus
        Exit Sub
    End If

    If Not Testtxt(comboGrade.Text) Then
        MsgBox "请选择年级!", vbOKOnly + vbExclamation, "警告"
        comboGrade.SetFocus
        Exit Sub
    End If

    If Not Testtxt(txtDirector.Text) Then
        MsgBox "请输入班主任姓名!", vbOKOnly + vbExclamation, "警告"
        txtDirector.SetFocus
        Exit Sub
    End If

    If Not Testtxt(txtClassroom.Text) Then   '如果没有检测到txt,那么
        MsgBox "请输入教室房间号!", vbOKOnly + vbExclamation, "警告"
        txtClassroom.SetFocus
        Exit Sub
    End If

2.2 如何判断有无文本?

Testtxt函数

Public Function Testtxt(txt As String) As Boolean
    If Trim(txt) = "" Then
        Testtxt = False
    Else
        Testtxt = True
    End If
End Function

2.3 如何判断文本为数字?

IsNumeric函数

If Not IsNumeric(Trim(txtClassno.Text)) Then
        MsgBox "请输入数字!", vbOKOnly + vbExclamation, "警告"
        txtClassno.SetFocus
        Exit Sub
End If

第三步:连接数据库,判断文本框内容是否已存在

3.1 ExecuteSQL

Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset
'execute SQL and return recordset
    Dim cnn As ADODB.Connection
    Dim rst As ADODB.Recordset
    Dim sTokens() As String
    On Error GoTo ExecuteSQL_Error
    sTokens = Split(SQL)
    Set cnn = New ADODB.Connection
    cnn.Open ConnectString
    If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then
        cnn.Execute SQL
        MsgString = sTokens(0) & " query successful"
    Else
        Set rst = New ADODB.Recordset
        rst.Open Trim$(SQL), cnn, adOpenKeyset, adLockOptimistic
        Set ExecuteSQL = rst
        MsgString = "查询到" & rst.RecordCount & "条记录"
    End If
ExecuteSQL_Exit:
    Set rst = Nothing
    Set cnn = Nothing
    Exit Function
ExecuteSQL_Error:
    MsgString = "查询错误:" & _
        Err.Description
    Resume ExecuteSQL_Exit
End Function

3.2判断所查询内容是否存在(存在弹出提示,不存在就进入第四步)

If Not (mrc.EOF And mrc.BOF) Then
        mrc.MoveFirst
    End If
    While (mrc.EOF = False)
        If (Trim(mrc.Fields(0)) = Trim(txtClassno.Text)) Then
            MsgBox "班号已经存在,请重新输入班号!", vbOKOnly + vbExclamation, "警告"
            txtClassno.Text = ""
            txtClassno.SetFocus
            Exit Sub
        Else
            mrc.MoveNext
        End If
    Wend

第四步: 将输入的文本内容添加至数据库

mrc.AddNew
    mrc.Fields(0) = Trim(txtClassno.Text)
    mrc.Fields(1) = Trim(comboGrade.Text)
    mrc.Fields(2) = Trim(txtDirector.Text)
    mrc.Fields(3) = Trim(txtClassroom.Text)
    mrc.Update
    mrc.Close
    MsgBox "添加班级信息成功!", vbOKOnly + vbExclamation, "添加班级信息"

第五步:信息添加成功

猜你喜欢

转载自blog.csdn.net/elsa15/article/details/80207676