前言
机房收费系统进行到注册窗体了,感觉机房跟学生的很多地方都是一样的,但是由于机房是自己完成,外界的帮助较少,都是自己整理逻辑,自己去设计代码(大部分都是去学生和博客上找,然后理解之后自己敲),刚开始没有什么思路,看着成品不知道从哪下手,之后看了师哥的博客之后理好了逻辑之后就可以了。
主要内容
一、逻辑图
二、代码分析
1.如何判断文本框输入的是否为数字
If Not IsNumeric(Trim(txtCash.Text)) Then
MsgBox "格式不对!", vbOKOnly + vbExclamation, "温馨提示"
txtCash.SetFocus
txtCash.Text = ""
Exit Sub
End If
2.如何连接表——查询
'连接表,查询卡号——cardno等于文本框txtCardNo中输入的部分数据。
txtSQL = "select * from student_Info where cardno= '" & Trim(txtCardNo.Text) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
3.如何查询数据库中是否有该数据。
'遍历表
If mrc.EOF = False Then
MsgBox "该卡号已经存在,请重新输入!", vbOKOnly + vbExclamation, "温馨提示"
txtCardNo.SetFocus
txtCardNo.Text = ""
Exit Sub
End If
4.如何往数据库中输入数据。(更新表)
mrc.AddNew
mrc.Fields(0) = Trim(txtCardNo.Text)
mrc.Fields(1) = Trim(txtSID.Text)
mrc.Fields(2) = Trim(txtName.Text)
mrc.Fields(3) = Trim(txtSex.Text)
mrc.Fields(4) = Trim(txtDept.Text)
mrc.Fields(5) = Trim(txtGrade.Text)
mrc.Fields(6) = Trim(txtClass.Text)
mrc.Fields(7) = Trim(txtCash.Text)
mrc.Fields(8) = Trim(txtExplain.Text)
mrc.Fields(9) = UserName
mrc.Fields(10) = Trim(txtState.Text)
mrc.Fields(11) = "未结账"
mrc.Fields(12) = Date
mrc.Fields(13) = Time
mrc.Fields(14) = Trim(cmbType.Text)
mrc.Update
三、遇见的错误和问题
1.通配符的格式问题
'" & Trim(txtCardNo.Text) & "'
这部分,单引号内是输入sql中的信息的,双引号来判断里边的东西是一个字符串。简单地说,双引号是给VB用的,单引号是给SQL语句用的。里面的通配符是干嘛的暂时还没有搞懂。
小结
这次注册窗体的大部分代码都是参照的学生管理系统的代码,很多无法实现默写,自己对代码的掌握还是太差,应该经常敲代码,加强代码的学习,另外这次逻辑也不是独立理清楚的,看了很多人的博客之后才明白,下次要提高独立解决问题的能力。