📄 frmstudent.frm
字号:
'Set txtXJdelINFO(3).DataSource = rsZY
'txtXJdelINFO(3).DataField = "专业名称"
Set rsBJ = New ADODB.Recordset '设置连接的班级
rsBJ.CursorLocation = adUseClient
rsBJ.Open "xsBJ", conn, 1, 1
Set txtBanji.DataSource = rsBJ
txtBanji.AddItem "班级名称"
Set txtXJBj.DataSource = rsBJ
txtXJBj.AddItem "班级名称"
Set txtXJBanji.DataSource = rsBJ
txtXJBanji.AddItem "班级名称"
Set txtXJdelBJ.DataSource = rsBJ
txtXJdelBJ.AddItem "班级名称"
'Set txtXJdelINFO(4).DataSource = rsBJ
'txtXJdelINFO(4).DataField = "班级名称"
Set Text1(0).DataSource = rsXJ '绑定字段
Set Text1(1).DataSource = rsXJ
Set txtXJsex.DataSource = rsXJ
Set txtXJmianmao.DataSource = rsXJ
Set txtXJDate.DataSource = rsXJ
Set txtXJZhuanye.DataSource = rsXJ
Set txtXJBanji.DataSource = rsXJ
Set Text1(2).DataSource = rsXJ
Set Text1(3).DataSource = rsXJ
Set Text1(4).DataSource = rsXJ
Text3(0).DataField = "学号"
Text3(1).DataField = "姓名"
txtXJsex.DataField = "性别"
txtXJmianmao.DataField = "政治面貌"
txtXJDate.DataField = "出生日期"
txtXJZhuanye.DataField = "专业"
txtXJBanji.DataField = "班级"
Text3(2).DataField = "家庭住址"
Text3(3).DataField = "联系电话"
Text3(4).DataField = "备注"
For i = 0 To 9
Set txtXJdelINFO(i).DataSource = rsXJ
Next
txtXJdelINFO(0).DataField = "学号"
txtXJdelINFO(1).DataField = "姓名"
txtXJdelINFO(2).DataField = "性别"
txtXJdelINFO(3).DataField = "专业"
txtXJdelINFO(4).DataField = "班级"
txtXJdelINFO(5).DataField = "政治面貌"
txtXJdelINFO(6).DataField = "出生日期"
txtXJdelINFO(7).DataField = "家庭住址"
txtXJdelINFO(8).DataField = "联系电话"
txtXJdelINFO(9).DataField = "备注"
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
On Error Resume Next
rsXJ.Close
rsBJ.Close
rsZY.Close
Me.Hide
End Sub
Private Sub Command1_Click() '退出系统
On Error Resume Next
rsXJ.Close
rsBJ.Close
rsZY.Close
conn.Close
Unload Me
End Sub
Private Sub cmdAdd_Click()
For i = 0 To 2
If Trim(Text1(i).Text = "") Then
MsgBox "请输入完整的信息!", vbOKOnly + vbQuestion, "提示"
Text1(i).SetFocus
Exit Sub
End If
Next
If txtZhuanye.Text = "" Or txtBanji.Text = "" Then MsgBox "请选择学生的专业和班级!", vbOKOnly + vbQuestion, "提示": Exit Sub
If txtMianmao.Text = "" Then MsgBox "请选择学生的政治面貌!", vbOKOnly + vbQuestion, "提示": txtMianmao.SetFocus: Exit Sub
If Not (Optm Or Optw) Then MsgBox "请选择学生的性别!", vbOKOnly + vbQuestion, "提示": Exit Sub
inputXS_info '写入到学生数据库
End Sub
Sub inputXS_info() '添加学生学籍到数据库
Dim txtsql As String
txtsql = "select * from xsXJ where 学号='" & Trim(Text1(0).Text) & "'"
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
rs.Open txtsql, conn, 1, 1
If rs.EOF = False Then
MsgBox "数据库中已经存在学号为:" & Text1(0).Text & "的学生!请重新输入!", vbOKOnly, "警告"
cmdXJcls_Click '清空
Text1(0).SetFocus
Else
rsXJ.AddNew '添加到新记录
rsXJ.Fields(0) = Text1(0).Text
rsXJ.Fields(1) = Text1(1).Text
If Optw Then
rsXJ.Fields(2) = "男"
Else
rsXJ.Fields(2) = "女"
End If
rsXJ.Fields(5) = txtMianmao.Text
rsXJ.Fields(6) = txtDate.Value
rsXJ.Fields(3) = txtZhuanye.Text
rsXJ.Fields(4) = txtBanji.Text
rsXJ.Fields(7) = Text1(2).Text
If Trim(Text1(3).Text = "") Then
rsXJ.Fields(8) = "空"
Else
rsXJ.Fields(8) = Text1(3).Text
End If
If Trim(Text1(4).Text = "") Then
rsXJ.Fields(9) = "空"
Else
rsXJ.Fields(9) = Text1(4).Text
End If
rsXJ.Update
DataGrid1.Refresh
MsgBox "学生学籍已经成功加入到数据库中!", vbOKOnly + vbInformation, "提示"
cmdXJcls_Click '清空
Text1(0).SetFocus
End If
End Sub
Private Sub cmdXJcls_Click()
On Error Resume Next
For i = 0 To 4
Text1(i).Text = ""
Next
Optm.Value = 0: Optw.Value = 0
txtMianmao.Text = ""
txtZhuanye.Text = ""
txtBanji.Text = ""
Text1(0).SetFocus
End Sub
Private Sub cmdXJfind_Click() '查询
If Opt1.Value And Trim(txtXuehao.Text = "") Then MsgBox "请输入学号!", vbOKOnly + vbInformation, "提示": txtXuehao.SetFocus: Exit Sub
If Opt2.Value And Trim(txtName.Text = "") Then MsgBox "请输入姓名!", vbOKOnly + vbInformation, "提示": txtName.SetFocus: Exit Sub
If Check1.Value And txtXJBj.Text = "" Then MsgBox "请选择班级!", vbOKOnly + vbInformation, "提示": txtXJBj.SetFocus: Exit Sub
xsXJfind_info '学籍查询模块
End Sub
Sub xsXJfind_info() '学籍查询模块
Dim txtsql As String
If Opt1.Value Then
If Check1.Value Then
txtsql = "selcet * from xsXJ where 学号='" & Trim(txtXuehao.Text) & "'" & "and 班级='" & Trim(txtXJBj.Text) & "'"
Else
txtsql = "select * from xsXJ where 学号='" & Trim(txtXuehao.Text) & "'"
End If
Else
If Check1.Value Then '按姓名进行模糊查询
txtsql = "select * from xsXJ where 姓名 like '" & "%" & Trim(txtName.Text) & "%" & "'" & "and 班级='" & Trim(txtXJBj.Text) & "'"
Else
txtsql = "select * from xsxj where 姓名 like '" & "%" & Trim(txtName.Text) & "%" & "'"
End If
End If
Set rs = New ADODB.Recordset
'rs.Close
rs.Open txtsql, conn, 1, 1
If rs.EOF = False Then
rs.MoveFirst
Set DataGrid2.DataSource = rs
DataGrid2.Refresh
For i = 0 To 4
Set Text3(i).DataSource = rs
Next
Set txtXJsex.DataSource = rs '绑定字段
Set txtXJmianmao.DataSource = rs
Set txtXJDate.DataSource = rs
Set txtXJZhuanye.DataSource = rs
Set txtXJBanji.DataSource = rs
Else
MsgBox "没有找到符合条件的记录!请重新输入查询条件!", vbOKOnly + vbInformation, "提示"
End If
End Sub
Private Sub Command2_Click() '显示全部
Set DataGrid2.DataSource = rsXJ
DataGrid2.Refresh
End Sub
Private Sub cmdXJchange_Click() '修改
If cmdXJchange.Caption = "修改" Then
cmdXJchange.Caption = "确认修改"
For i = 0 To 4
Text3(i).Enabled = True
Next
txtXJmianmao.Enabled = True
txtXJDate.Enabled = True
txtXJZhuanye.Enabled = True
txtXJBanji.Enabled = True
txtXJsex.Enabled = True
Else
cmdXJchange.Caption = "修改"
changexj_info '修改学生信息
For i = 0 To 4
Text3(i).Enabled = False
Next
txtXJmianmao.Enabled = False
txtXJDate.Enabled = False
txtXJZhuanye.Enabled = False
txtXJBanji.Enabled = False
txtXJsex.Enabled = False
End If
End Sub
Sub changexj_info()
For i = 0 To 2
If Trim(Text3(i).Text = "") Then
MsgBox "请输入完整的信息!", vbOKOnly + vbInformation, "提示"
Exit Sub
End If
Next
rsXJ.Fields(0) = Text3(0).Text '修改数据
rsXJ.Fields(1) = Text3(1).Text
rsXJ.Fields(2) = txtXJsex.Text
rsXJ.Fields(5) = txtMianmao.Text
rsXJ.Fields(6) = txtDate.Value
rsXJ.Fields(3) = txtXJZhuanye.Text
rsXJ.Fields(4) = txtXJBanji.Text
rsXJ.Fields(7) = Text3(2).Text
If Trim(Text3(3).Text = "") Then
rsXJ.Fields(8) = "空"
Else
rsXJ.Fields(8) = Text3(3).Text
End If
If Trim(Text3(4).Text = "") Then
rsXJ.Fields(9) = "空"
Else
rsXJ.Fields(9) = Text3(4).Text
End If
rsXJ.Update '更新数据
DataGrid1.Refresh
DataGrid2.Refresh
DataGrid3.Refresh
rsXJ.Close
MsgBox "学生学籍修改成功!", vbOKOnly + vbInformation, "提示"
End Sub
Private Sub cmdXJchangeT_Click()
cmdXJchange.Caption = "修改"
For i = 0 To 4
Text3(i).Enabled = False
Next
txtXJmianmao.Enabled = False
txtXJDate.Enabled = False
txtXJZhuanye.Enabled = False
txtXJBanji.Enabled = False
txtXJsex.Enabled = False
End Sub
Private Sub Command5_Click()
rsXJ.MovePrevious
If rsXJ.BOF Then
MsgBox "已经是第一条记录了!", vbOKOnly + vbInformation, "提示"
rsXJ.MoveFirst
End If
End Sub
Private Sub Command6_Click()
On Error Resume Next
rsXJ.MoveNext
If rsXJ.EOF Then
MsgBox "已经是最后一条记录了!", vbOKOnly + vbInformation, "提示"
rsXJ.MoveLast
End If
End Sub
Private Sub cmdXJdelFind_Click() '查询
If Option1.Value And Trim(txtXJdelNum.Text) = "" Then MsgBox "请输入学生学号!", vbOKOnly + vbInformation, "提示": Exit Sub
If Option2.Value And Trim(txtXJdelName.Text) = "" Then MsgBox "请输入学生姓名!", vbOKOnly + vbInformation, "提示": Exit Sub
If CheckDel.Value And txtXJdelBJ.Text = "" Then MsgBox "请选择班级!", vbOKOnly + vbInformation, "提示": Exit Sub
xjDelfind '查询
End Sub
Sub xjDelfind() '删除查询
Dim txtsql As String
If Option1.Value Then '按学号查询
If CheckDel.Value Then
txtsql = "select * from xsXJ where 学号='" & Trim(txtXJdelNum.Text) & "'" & "and 班级= '" & Trim(txtXJdelBJ.Text) & "'"
Else
txtsql = "select * from xsXJ where 学号='" & Trim(txtXJdelNum.Text) & "'"
End If
Else
If CheckDel.Value Then '按姓名模糊查询
txtsql = "select * from xsXJ where 姓名 like '" & "%" & Trim(txtXJdelName.Text) & "%" & "'" & " and 班级='" & Trim(txtXJdelBJ.Text) & "'"
Else
txtsql = "select * from xsXJ where 姓名 like '" & "%" & Trim(txtXJdelName.Text) & "%" & "'"
End If
End If
Set rs = New ADODB.Recordset
rs.Open txtsql, conn, 1, 1
If rs.EOF = False Then
Set DataGrid3.DataSource = rs
DataGrid3.Refresh
For i = 0 To 9
Set txtXJdelINFO(i).DataSource = rs
Next
Else
MsgBox "没有找到符合条件的记录!请重新输入查询条件", vbOKOnly + vbInformation, "提示"
End If
End Sub
Private Sub Command4_Click() '上一条
rsXJ.MovePrevious
If rsXJ.BOF Then
MsgBox "已经是第一条记录了!", vbOKOnly + vbInformation, "提示"
rsXJ.MoveFirst
End If
End Sub
Private Sub Command3_Click() '下一条
On Error Resume Next
rsXJ.MoveNext
If rsXJ.EOF Then
MsgBox "已经是最后一条记录了!", vbOKOnly + vbInformation, "提示"
rsXJ.MoveLast
End If
End Sub
Private Sub cmdXJdel_Click() '注销学籍
If MsgBox("是否真的删除该学生的学籍?", vbOKOnly + vbInformation, "提示") = vbOK Then
rsXJ.Delete
DoEvents
rsXJ.MoveFirst
DataGrid3.Refresh
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -