学生档案管理系统--实现步骤
《学生档案管理系统》课题指导资料
一、 系统功能要求 (1) 系统安全设计
用户进入系统,必须先进行登录,不同的用户具有不同的使用权限。 管理员可使用该系统全部功能,而一般人员对信息只有浏览、查询权。 (2) 系统维护设计
对学生信息可以进行添加、修改、删除和浏览操作。 (3) 相关查询设计
对学校学生信息实现按姓名和按学号两种方式进行相关查询。 二、 总体结构设计 1、 总体结构框架图 用户登录 2、 总结构说明 学生名册序号 窗体标题(caption) 窗体标识(name) 窗体功能 备注 学生基本信息查询 学生档案管理系统 1 Form1 登录 启动 2 3 4 5 6 学生名册 基本信息查询 系统维护 成绩查询维护 成绩信息查询 Form4 Form2 Form3 Form5 Form6 信息查询 显示学生名单 成绩查询 非管理员登录“系统维护”按钮不可用 宿舍查询 浏览、查询学生基本信息 所有用户都有使用权系统维护 限 基本信息浏览、添加、修改、删除、查询等操作 成绩信息浏览、添加、修改、删除、查询等操作 仅管理员有使用权限 仅管理员有使用权限 浏览、查询学生成绩信息 所有用户都有使用权限 3.数据库设计
根据系统功能要求,数据库应包括“学生信息”和“学生成绩”这两个表。 3.1数据结构设计 学生基本信息表:jiben (1)“jiben”(学生基本信息表)表结构 字段名称 学号 姓名 性别 生日 系别 专业 班级 家庭住址 入学日期
类型 大小 数据库:yg 10 文本 文本 文本 文本 文本 文本 文本 文本 文本 10 2 20 10 10 20 50 20 是否必要字段 是 否 否 否 否 否 否 否 否 索引 允许零字长 学生成绩表:gz 否 否 否 是 住宿表否 :zs 是 否 否 否 否 否 否 是 是 是 是 是 是 1
奖惩情况 字段名称 学号 姓名 数学 语文 英语 计算机基础 文本 类型 文本 文本 文本 文本 文本 文本 Memo 大小 10 10 20 20 20 20 否 否 索引 否 否 否 否 否 否 是 允许零字长 否 是 是 是 是 是 (2)“gz”(学生成绩)表结构
是否必要字段 是 否 否 否 否 否 3.2 数据表的建立(参见VB教科书) 1)启动VB
2)选择“外接程序/可视化数据管理器”菜单命令。 三、详细设计
1.“登录”窗体(Form1) 1.1界面设计 1.放放大窗体范围 WindowsState 属性为Z (最大化) 2.修改窗体底色 Backcolor属性为浅红 1.2控件对象属性列表 对象名称 Lable1 Lable2 Lable3 Lable4 Text1 Tent2 属性 Caption Font Caption Font Caption Font Caption Font 默认 设置值 学生档案管理系统 字体:楷体 字号:小初 请输入用户名和密码 字体:宋体 字号:小二 用户名 字体:宋体 字号:三号 密码 字体:宋体 字号:三号 确定 宋体、四号 取消 宋体、四号 退出 宋体、四号 功能 标题 提示 标题 标题 接收输入用户名 接收密码 用户名和密码 密码确认 取消操作 退出系统 passwordchar * Command1 Caption Font Command2 Caption Font Command3 Caption Font 1.3 编写代码
Private Sub Command1_Click()
If Text1.Text = \"people\" And Text2.Text = \"people\" Or Text1.Text = \"guanli\" And Text2.Text = \"guanli\" Then
2
Form1.Hide Form4.Show
If Text1.Text = \"guanli\" And Text2.Text = \"guanli\" Then Form4.Command2.Enabled = True End If
If Text1.Text = \"people\" And Text2.Text = \"people\" Then Form4.Command2.Enabled = False End If Else
MsgBox \"输入的密码和用户名不符,请重新输入!\ Text1.Text = \"\" Text2.Text = \"\" Text1.SetFocus End If End Sub
Private Sub Command2_Click() Text1.Text = \"\" Text2.Text = \"\" Text1.SetFocus End Sub
Private Sub Command3_Click() End End Sub
Private Sub Form_Load() Text1.Text = \"\" Text2.Text = \"\" End Sub
Private Sub Text2_Change()
If Text2.Text = \"guanli\" Or Text2.Text = \"people\" Then Command1.SetFocus End If End Sub
2. “学生名册”窗体(Form4) 2.1 界面设计 2.2 控件属性列表 对象名称 DBGrid1 Data1 属性 Visible Datasource Connect DataBaseName RecordSouce Visible 设置值 True Data1 Access C:\\Users\\liu\\Desktop\\学生档案\\学生档案管理系统.mdb Jiben False 功能 列表显示学生名单 连接“jiben”表(基本信息表) 3
Command1 Command2 Command3 Command4 Command5 Caption Font Caption Font Caption Font Caption Font Caption Font 学生名册 宋体、四号 系统维护 宋体、四号 信息查询 宋体、四号 返回 宋体、四号 退出 宋体、四号 单击,列表显示全部学生名单 单击,进入系统维护窗体 单击,进入信息查询窗体 返回登录窗体(Form1) 退出系统 2.3 编写代码
Private Sub Command1_Click() DBGrid1.Visible = True End Sub
Private Sub Command2_Click() Form3.Show Form4.Hide End Sub
Private Sub Command3_Click() Form2.Show Form4.Hide End Sub
Private Sub Command4_Click() Form1.Show Form4.Hide End Sub
Private Sub Command5_Click() End End Sub
Private Sub Form_Load()
Data1.RecordSource = \"select 学号,姓名,性别,专业 from jiben\" Data1.Visible = False DBGrid1.Visible = False End Sub
3. “信息查询”窗体(Form2) 3.1 界面设计
3.2 控件属性列表 对象名称 Frame1 Forme2 Forme3 Option1 Option2
属性 Caption Caption Caption Caption Caption 设置值 个人信息 其他信息 请选择 基本信息 成绩信息 功能 将同类信息放在框架中 将同类信息放在框架中 将同类信息放在框架中 单击,选择一项 单击,选择一项 4
Data1 Connect DataBaseName RecordSouce Visible Caption DataSouce DataField Caption Font Caption Font Caption Font Caption Font Caption Font Caption Font Access C:\\Users\\liu\\Desktop\\学生档案\\学生档案管理系统.mdb Jiben False 连接“jiben”表(学生基本信息表) Label1~Label10 Text1~Text10 依次分别为:学号、姓名、提示 性别······奖惩情况 Data1 显示相应字段内容 依次分别为:学号、姓名、性别······奖惩情况 上一个 宋体、四号 下一个 宋体、四号 按姓名查询 宋体、四号 按学号查询 宋体、四号 返回 宋体、四号 退出 宋体、四号 单击,显示上一个记录 单击,显示下一个记录 输入姓名查询 输入学号查询 返回学生名册窗体(Form4) 退出系统 Command1 Command2 Command3 Command4 Command5 Command6 3.3 编写代码
Private Sub Command1_Click() Data1.Recordset.MovePrevious If Data1.Recordset.BOF Then Data1.Recordset.MoveFirst Command1.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If End Sub
Private Sub Command2_Click() Data1.Recordset.MoveNext
If Data1.Recordset.EOF Then Data1.Recordset.MoveLast Command2.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If End Sub
Private Sub Command3_Click()
5
ss = \"请输入要查询学生姓名:\" instring$ = InputBox$(ss, \"输入提示\")
Data1.Recordset.FindFirst \"姓名='\" & instring$ & \"'\" If Data1.Recordset.NoMatch Then msg = \"没有该学生的信息!\" MsgBox msg, vbOKOnly, \"提示\" End If
If Data1.Recordset.BOF Then Data1.Recordset.MoveFirst Command1.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If
If Data1.Recordset.EOF Then Data1.Recordset.MoveLast Command2.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If End Sub
Private Sub Command4_Click() ss = \"请输入要查询学生的学号\"
instring$ = InputBox$(ss, \"输入提示\
Data1.Recordset.FindFirst \"学号='\" & instring$ & \"'\" If Data1.Recordset.NoMatch Then msg = \"没有该学生的信息!\" MsgBox msg, vbOKOnly, \"提示\" End If
If Data1.Recordset.BOF Then Data1.Recordset.MoveFirst Command1.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If
If Data1.Recordset.EOF Then Data1.Recordset.MoveLast Command2.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If
6
If Data1.Recordset.BOF Then Data1.Recordset.MoveFirst Command1.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If
If Data1.Recordset.EOF Then Data1.Recordset.MoveLast Command2.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If End Sub
Private Sub Command5_Click()
If Form1.Text1.Text <> \"guanli\" Then Form4.Command2.Enabled = False End If
Form4.Show Form2.Hide End Sub
Private Sub Command6_Click() End End Sub
Private Sub Form_Activate() Frame1.Visible = False Frame2.Visible = False Label1.Visible = False Label2.Visible = False Label3.Visible = False Label4.Visible = False Label5.Visible = False Label6.Visible = False Label7.Visible = False Label8.Visible = False Label9.Visible = False Label10.Visible = False Text1.Visible = False Text2.Visible = False Text3.Visible = False Text4.Visible = False Text5.Visible = False Text6.Visible = False
7
Text7.Visible = False Text8.Visible = False Text9.Visible = False Text10.Visible = False End Sub
Private Sub Option1_Click() Frame1.Visible = True Frame2.Visible = True Label1.Visible = True Label2.Visible = True Label3.Visible = True Label4.Visible = True Label5.Visible = True Label6.Visible = True Label7.Visible = True Label8.Visible = True Label9.Visible = True Label10.Visible = True Text1.Visible = True Text2.Visible = True Text3.Visible = True Text4.Visible = True Text5.Visible = True Text6.Visible = True Text7.Visible = True Text8.Visible = True Text9.Visible = True Text10.Visible = True End Sub
Private Sub Option2_Click() Option1.Value = False Option2.Value = False Form2.Hide Form6.Show End Sub
4. “基本信息录入”窗体(Form3) 4.1 界面设计
4.2 控件属性列表 对象名称 Frame1 Option1 Option2 Data1
属性 Caption Caption Caption Connect 设置值 请选择 基本信息 成绩信息 Access 功能 将同类信息放在框架中 单击,选择一项 单击,选择一项 连接“jiben”表(基本信息表) 8
DataBaseName RecordSouce Visible C:\\Users\\liu\\Desktop\\学生档案\\学生档案管理系统.mdb Jiben False Data1 列表显示所有学生的基本信息 DBGrid1 DataSource Label1~Label10 Caption Text1~Text10 DataSouce DataField Caption Font Caption Font Caption Font Caption Font Caption Font Caption Font Caption Font Caption Font Caption Font 依次分别为:学号、姓名、提示 性别······奖惩情况 Data1 显示相应字段内容 依次分别为:学号、姓名、性别······奖惩情况 信息浏览 宋体、四号 信息录入 宋体、四号 信息修改 宋体、四号 信息删除 宋体、四号 确定 宋体、四号 取消 宋体、四号 信息查询 宋体、四号 返回 宋体、四号 退出 宋体、四号 单击,显示列表所有学生基本信息 单击,添加某个学生基本信息 单击,修改当前学生基本信息 单击,删除当前学生基本信息 单击,保存钢材所作的录入或修改 单击,取消刚才的录入或修改 单击,按学号查询某个学生的基本信息 单击,返回学生名册窗体 (Form4) 退出系统 Command1 Command2 Command3 Command4 Command5 Command6 Command7 Command8 Command9 4.3 编写代码
Private Sub Command1_Click() DBGrid1.Visible = True End Sub
Private Sub Command2_Click() srxg = True
Data1.Recordset.AddNew Text1.SetFocus End Sub
Private Sub Command3_Click() srxg = True
Data1.Recordset.Edit Text1.SetFocus End Sub
9
Private Sub Command4_Click() Dim num As Integer num = Val(Text1.Text)
ss = MsgBox(\"真的要删除这个记录吗?\删除记录\") If (ss = vbYes) Then
Data1.Recordset.Delete Data1.Recordset.MoveNext If Data1.Recordset.EOF Then Data1.Recordset.MoveLast End If End If End Sub
Private Sub Command5_Click() srxg = True
Data1.Recordset.Update End Sub
Private Sub Command6_Click() srxg = True
Data1.Recordset.CancelUpdate End Sub
Private Sub Command7_Click() srxg = True
ss = \"请输入要查询学生的学号\"
instring$ = InputBox$(ss, \"输入提示\
Data1.Recordset.FindFirst \"学号='\" & instring$ & \"'\" If Data1.Recordset.NoMatch Then msg = \"没有记录!\"
MsgBox msg, vbOKOnly, \"提示\" End If End Sub
Private Sub Command8_Click() Form4.Show Form3.Hide End Sub
Private Sub Command9_Click() End End Sub
Private Sub Form_Activate() DBGrid1.Visible = False Label1.Visible = False Label2.Visible = False Label3.Visible = False Label4.Visible = False Label5.Visible = False
10
Label6.Visible = False Label7.Visible = False Label8.Visible = False Label9.Visible = False Label10.Visible = False Text1.Visible = False Text2.Visible = False Text3.Visible = False Text4.Visible = False Text5.Visible = False Text6.Visible = False Text7.Visible = False Text8.Visible = False Text9.Visible = False Text10.Visible = False End Sub
Private Sub Option1_Click() Label1.Visible = True Label2.Visible = True Label3.Visible = True Label4.Visible = True Label5.Visible = True Label6.Visible = True Label7.Visible = True Label8.Visible = True Label9.Visible = True Label10.Visible = True Text1.Visible = True Text2.Visible = True Text3.Visible = True Text4.Visible = True Text5.Visible = True Text6.Visible = True Text7.Visible = True Text8.Visible = True Text9.Visible = True Text10.Visible = True End Sub
Private Sub Option2_Click() Form3.Hide Option2 = False Option1 = False Form5.Show End Sub
11
5. “成绩录入”窗体(Form5) 5.1 界面设计
5.2 控件属性列表 对象名称 Data1 属性 Connect DataBaseName RecordSouce Visible 设置值 Access C:\\Users\\liu\\Desktop\\学生档案\\学生档案管理系统.mdb gz False Data1 功能 连接“gz”表(学生成绩表) DBGrid1 DataSoure 列表显示所有学生的成绩信息 Label1~Label6 Caption Text1~Text6 DataSouce DataField Caption Font Caption Font Caption Font Caption Font Caption Font Caption Font Caption Font Caption Font Caption Font 依次分别为:学号、姓名、提示 数学、······、计算机基础 Data1 显示相应字段内容 依次分别为:学号、姓名、数学、······、计算机基础 信息浏览 宋体、四号 信息录入 宋体、四号 信息修改 宋体、四号 信息删除 宋体、四号 确定 宋体、四号 取消 宋体、四号 信息查询 宋体、四号 返回 宋体、四号 退出 宋体、四号 单击,显示列表所有学生成绩信息 单击,添加某个学生成绩信息 单击,修改当前学生成绩信息 单击,删除当前学生成绩信息 单击,保存刚才所作的录入或修改 单击,取消刚才的录入或修改 单击,按学号查询某个学生的成绩信息 单击,返回学生名册窗体 (Form4) 退出系统 Command1 Command2 Command3 Command4 Command5 Command6 Command7 Command8 Command9 5.3 编写代码 Private Sub Command1_Click() DBGrid1.Visible = True End Sub
Private Sub Command2_Click() srxg = True
Data1.Recordset.AddNew Text1.SetFocus End Sub
12
Private Sub Command3_Click() srxg = True
Data1.Recordset.Edit Text1.SetFocus End Sub
Private Sub Command4_Click() Dim num As Integer num = Val(Text1.Text)
ss = MsgBox(\"真的删除这个记录吗?\删除记录\") If (ss = vbYes) Then
Data1.Recordset.Delete Data1.Recordset.MoveNext If Data1.Recordset.EOF Then Data1.Recordset.MoveLast End If End If End Sub
Private Sub Command5_Click() srxg = True
Data1.Recordset.Update End Sub
Private Sub Command6_Click() srxg = False
Data1.Recordset.CancelUpdate End Sub
Private Sub Command7_Click() srxg = True
ss = \"请输入要查询学生学号\"
instring$ = InputBox$(ss, \"输入提示\
Data1.Recordset.FindFirst \"学号='\" & instring$ & \"'\" If Data1.Recordset.NoMatch Then msg = \"没有该记录!\"
MsgBox msg, vbOKOnly, \"提示\" End If End Sub
Private Sub Command8_Click() Form4.Show Form5.Hide End Sub
Private Sub Command9_Click() End End Sub
Private Sub Form_Load() End Sub
13
6. “成绩查询”窗体(Form6)
6.1 界面设计 6.2 控件属性列表 对象名称 Data1 属性 Connect DataBaseName RecordSouce Visible 设置值 Access C:\\Users\\liu\\Desktop\\学生档案\\学生档案管理系统.mdb gz False 功能 连接“gz”表(学生成绩表) Label1~Label6 Text1~Text6 Caption DataSouce DataField Caption Font Caption Font Caption Font Caption Font Caption Font Caption Font 依次分别为:学号、姓名、提示 数学、······、计算机基础 Data1 显示相应字段内容 依次分别为:学号、姓名、数学、······、计算机基础 上一个 宋体、四号 下一个 宋体、四号 按姓名查询 宋体、四号 按学号查询 宋体、四号 返回 宋体、四号 退出 宋体、四号 单击,显示上一个记录 单击,显示下一个记录 输入姓名查询 输入学号查询 返回学生名册窗体 (Form4) 退出系统 Command1 Command2 Command3 Command4 Command5 Command6 6.3 编写代码
Private Sub Command1_Click() Data1.Recordset.MovePrevious If Data1.Recordset.BOF Then Data1.Recordset.MoveFirst Command1.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If End Sub
Private Sub Command2_Click() Data1.Recordset.MoveNext If Data1.Recordset.EOF Then Data1.Recordset.MoveLast Command2.Enabled = False
14
Else
Command1.Enabled = True Command2.Enabled = True End If End Sub
Private Sub Command3_Click() ss = \"请输入要查询的学生姓名:\" instring$ = InputBox$(ss, \"输入提示\")
Data1.Recordset.FindFirst \"姓名='\" & instring$ & \"'\" If Data1.Recordset.NoMatch Then msg = \"没有该学生信息!\"
MsgBox msg, vbOKOnly, \"提示\" End If
If Data1.Recordset.BOF Then Data1.Recordset.MoveFirst Command1.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If
If Data1.Recordset.EOF Then Data1.Recordset.MoveLast Command2.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If End Sub
Private Sub Command4_Click() ss = \"请输入要查询学生学号\"
instring$ = InputBox$(ss, \"请输入提示\Data1.Recordset.FindFirst \"学号='\" & instring$ & \"'\" If Data1.Recordset.NoMatch Then msg = \"没有该学生信息!\"
MsgBox msg, vbOKOnly, \"提示\" End If
If Data1.Recordset.BOF Then Data1.Recordset.MoveFirst Command1.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If
If Data1.Recordset.EOF Then
15
Data1.Recordset.MoveLast Command2.Enabled = False Else
Command1.Enabled = True Command2.Enabled = True End If End Sub
Private Sub Command5_Click()
If Form1.Text1.Text <> \"guanli\" Then Form4.Command2.Enabled = False End If
Form4.Show Form6.Hide End Sub
Private Sub Command6_Click() End End Sub
Private Sub Form_Load() Text1.Text = \"\" Text2.Text = \"\" Text3.Text = \"\" Text4.Text = \"\" Text5.Text = \"\" Text6.Text = \"\" End Sub
16
因篇幅问题不能全部显示,请点此查看更多更全内容