【学生】学生优化(四)修改记录及“3021”

举报
Laura_张 发表于 2022/08/26 23:19:49 2022/08/26
【摘要】 一、点击修改记录,记录没有修改的时候也会提示修改成功。 加入一个判重。 原码:进行判断的只有一个条件,但是有的窗体是几个条件同时进行约束的。 '判断是否有重复记录 mrc.Delete txtSQL = "select * from result_Info where student_ID= '" & Trim...

一、点击修改记录,记录没有修改的时候也会提示修改成功。

加入一个判重。

原码:进行判断的只有一个条件,但是有的窗体是几个条件同时进行约束的。


  
  1. '判断是否有重复记录
  2. mrc.Delete
  3. txtSQL = "select * from result_Info where student_ID= '" & Trim(comboSID.Text) & "'"
  4. Set mrcc = ExecuteSQL(txtSQL, MsgText)
  5. If mrcc.EOF = False Then
  6. MsgBox "学号重复,请重新输入!", vbOKOnly + vbExclamation, "警告"
  7. mrcc.Close
  8. comboSID.SetFocus
  9. comboSID.Text = ""
  10. txtName.Text = ""

修改:判重的时候判断所有的约束条件,只要有一个条件进行修改过就可以。


  
  1. '判断是否有重复记录
  2. ' mrc.Delete
  3. txtSQL = "select * from student_Info where student_ID= '" & Trim(txtSID.Text) & "' and student_Name='" & Trim(txtName.Text) & "' and student_Sex='" & Trim(comboSex.Text) & "' and born_date='" & Trim(DTPicker1.Value) & "' and class_No='" & Trim(comboClassno.Text) & "' and tele_Number= '" & Trim(txtTel.Text) & "' and ru_Date='" & Trim(DTPicker2.Value) & "'and address='" & Trim(txtAddress.Text) & "' and comment= '" & Trim(txtComment.Text) & "'"
  4. Set mrcc = ExecuteSQL(txtSQL, MsgText)
  5. If mrcc.EOF = False Then
  6. MsgBox "记录重复,请重新输入!", vbOKOnly + vbExclamation, "警告"
  7. mrcc.Close
  8. txtSID.SetFocus
  9. Else

二、删除记录,删除数据库中的全部记录,会出现“3021”。

当数据库中的记录全部删除后,会提示记录删除完毕,并显示添加窗体。


  
  1. Private Sub Form_Load()
  2. 'SQL语句进行查询
  3. txtSQL = "select * from class_Info"
  4. '执行查询操作
  5. Set mrc = ExecuteSQL(txtSQL, MsgText)
  6. '判断数据集中是否还有记录
  7. If mrc.EOF = False Then
  8. '移到第一条记录
  9. mrc.MoveFirst
  10. '显示数据
  11. Call viewdata
  12. '记下当前记录的位置
  13. mybookmark = mrc.Bookmark
  14. '给标志赋初值
  15. mcclean = True
  16. Else
  17. str1 = MsgBox("没有班级信息,是否添加班级信息?", vbOKCancel, "提示")
  18. If str1 = vbOK Then
  19. Unload Me
  20. frmAddclassinfo.Show
  21. Else
  22. Unload Me
  23. End If
  24. End If
  25. End Sub

三、删除记录,删除数据库的最后一条记录,会出现“3021”。

直接加入一个跳转,当删除最后一条记录,出现“3021”,就直接跳转到提示框,然后进入添加窗体。


  
  1. Private Sub cmdDelete_Click()
  2. On Error GoTo 1
  3. ????
  4. ????
  5. ????
  6. ????
  7. 1:
  8. If Err = 3021 Then
  9. MsgBox "没有数据了,是否添加数据?", vbOKOnly + vbExclamation, "提示"
  10. If vbOK Then
  11. Unload Me
  12. frmAddclassinfo.Show
  13. Else
  14. txtClassno.Text = "'"
  15. comboGrade.Text = ""
  16. txtDirector.Text = ""
  17. txtClassroom.Text = ""
  18. End If
  19. End If
  20. end sub

四、进入修改窗体之前,先判断是否还有数据。

判断数据库是否为空,如果为空,则不加载窗体,并进入添加窗体。(在主窗体完成)


  
  1. Private Sub changeclass_Click()
  2. Dim mrc As ADODB.Recordset
  3. Dim txtsql As String
  4. Dim msgtext As String
  5. '连接数据库
  6. txtsql = "select * from class_info"
  7. Set mrc = ExecuteSQL(txtsql, msgtext)
  8. '判断是否为空
  9. If mrc.RecordCount <> 0 Then
  10. frmModifyclassinfo.Show
  11. Else
  12. MsgBox "没有班级信息,请先添加!", vbOKOnly + vbExclamation, "提示"
  13. Unload Me
  14. '跳转到添加窗体
  15. frmAddclassinfo.Show
  16. End If
  17. End Sub

 

文章来源: blog.csdn.net,作者:张艳伟_Laura,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/Laura__zhang/article/details/99776668

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。