当前位置:Gxlcms > mysql > 学生信息管理系统(五)增、删、改、查

学生信息管理系统(五)增、删、改、查

时间:2021-07-01 10:21:17 帮助过:19人阅读

学生信息管理系统就是一套套的增、删、改、查。 下面我们就来分别分析一下。 一、Add (添加一条记录,以frmAddclassinfo窗体为例) 首先,确保各个文本框不能为空。 用模块中的自定义函数Testtxt来检测文本框是否为空,若为空,弹出警告,文本框获取焦点。 例

学生信息管理系统就是一套套的增、删、改、查。 下面我们就来分别分析一下。 一、Add (添加一条记录,以frmAddclassinfo窗体为例)
首先,确保各个文本框不能为空。 用模块中的自定义函数Testtxt来检测文本框是否为空,若为空,弹出警告,文本框获取焦点。 例如:班号不能为空。
  If Not Testtxt(cboClassNo.Text) Then
        MsgBox "请输入班号!", vbOKOnly + vbExclamation, "警告"
        cboClassNo.SetFocus
        cboClassNo.Text = ""
        Exit Sub
    End If
其次,添加信息不能重复。
  txtSQL = "select * from class_Info where class_No='" & Trim(cboClassNo.Text) & "'"
  Set mrc = ExecuteSQL(txtSQL, MsgText)
  If  Not (mrc.EOF And mrc.BOF) Then                               '确保输入的班号不存在
        MsgBox "请重新输入班号!", vbOKOnly + vbExclamation, "警告"
        cboClassNo.SetFocus
        mrc.Close
  Else
  ……
最后,添加记录成功。
        txtSQL = "select * from class_Info"
        Set mrc = ExecuteSQL(txtSQL, MsgText)
        mrc.AddNew
        mrc.Fields(0) = Trim(cboClassNo.Text)
        mrc.Fields(1) = Trim(cboGrade.Text)
        mrc.Fields(2) = Trim(txtDirector.Text)
        mrc.Fields(3) = Trim(cboClassNo.Text)
        mrc.Update
        mrc.Close
        Me.Hide
        MsgBox "班级信息添加成功!", vbOKOnly + vbExclamation, "添加班级信息"
  End If
二、Delete(删除一条记录这里以frmModifyclassinfo为例。)

用一条MsgBox语句来决定是否删除记录。
str2$ = MsgBox("是否删除当前记录?", vbOKCancel, "删除当前记录")
OK,删除
If str2$ = vbOK Then
	mrc.MoveNext
        If mrc.EOF Then          
        	mrc.MoveFirst
                myBookmark = mrc.Bookmark
                mrc.MoveLast
                mrc.Delete
                mrc.Bookmark = myBookmark
                Call viewData
        Else
                myBookmark = mrc.Bookmark
                mrc.MovePrevious
                mrc.Delete         
                mrc.Bookmark = myBookmark
                Call viewData
        End If
cancel,取消删除
Else
	mrc.Bookmark=mybookmark
	Call viewData
End If
这里的viewData函数是用来把临时表中的当前记录赋值给各个文本框
cboClassNo.Text = mrc.Fields(0)
cboGrade.Text = mrc.Fields(1)
txtDirector.Text = mrc.Fields(2)
txtClassroom.Text = mrc.Fields(3)
三、Modify(修改一条记录,这里以frmModifyclassinfo为例。) 首先,点击修改记录时,各文本框可用,查看信息按钮不可用
cboClassNo.Enabled=True
cboGrade.Enabled=True
txtDirector.Enabled=True
txtClassroom.Enabled=True
cmdFirst.Enabled=False
cmdPrevious.Enabled=False
cmdNext.Enabled=False
cmdLast.Enabled=False
其次,同添加记录一样,各文本框不能为空,信息不能重复。修改记录成功
mrc.AddNew
mrc.Fields(0) = Trim(comboClassNo.Text)
mrc.Fields(1) = Trim(comboGrade.Text)
mrc.Fields(2) = Trim(txtDirector.Text)
mrc.Fields(3) = Trim(txtClassroom.Text)
mrc.Update
MsgBox "班级信息修改成功!", vbOKOnly + vbExclamation, "警告"
mrc.Bookmark = mybookmark
Call viewData
最后,各文本框不可用,查看信息按钮可用。
cboClassNo.Enabled=False
cboGrade.Enabled=False
txtDirector.Enabled=False
txtClassroom.Enabled=False
cmdFirst.Enabled=True
cmdPrevious.Enabled=True
cmdNext.Enabled=True
cmdLast.Enabled=True
四、Inquire(查询记录。) 这里我们有两种查询方式:
(1)直接点击第一条,最后一条,上一条,下一条按钮查询记录。
Private Sub cmdFirst_Click()                                    '记录集移动到第一条
    mrc.MoveFirst
    Call viewData
End Sub

Private Sub cmdLast_Click()                                     '记录集移动到最后一条
    mrc.MoveLast
    Call viewData
End Sub
 
Private Sub cmdNext_Click()                                     '记录集移动到下一条
    mrc.MoveNext
    If mrc.EOF Then
        mrc.MoveFirst
    End If
    Call viewData
End Sub
 
Private Sub cmdPrevious_Click()                                 '记录集移动到上一条
    mrc.MovePrevious
    If mrc.BOF Then
        mrc.MoveLast
    End If
   Call viewData
End Sub
此查询方法适合于查询记录少的,单个表的查询。
(2)按条件查找想要的数据,并在MSHFlexGrid控件中按顺序显示。
此查询方法适合于查询记录比较多的,表和表之间有联系的查询。按条件查询,并将查询结果排序。

人气教程排行