实验十九 Oracle数据库系统开发实例学生成绩管理系统.docx
- 文档编号:10160366
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:51
- 大小:1.25MB
实验十九 Oracle数据库系统开发实例学生成绩管理系统.docx
《实验十九 Oracle数据库系统开发实例学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《实验十九 Oracle数据库系统开发实例学生成绩管理系统.docx(51页珍藏版)》请在冰豆网上搜索。
实验十九Oracle数据库系统开发实例学生成绩管理系统
实验十九Oracle数据库系统开发实例
-学生成绩管理系统
【一】实验目的
1.掌握采用VB.NET开发Oracle数据库系统的方法;
2.掌握开发C/S模式的数据库系统的方法。
【二】实验内容
利用SQLDeveloper,在scott用户下创建6张表:
student、teacher、course、allocate、score和users表,如表19-1至19-7所示。
表19-1users表结构
列名
数据类型
非空
说明
用户名
char(10)
√
主键
密码
char(10)
√
级别
char(10)
√
表19-2users表的数据
用户名
密码
级别
admin
123456
系统管理员
表19-3student表的结构
列名
数据类型
非空
说明
学号
char(10)
√
主键
姓名
char(10)
√
性别
char
(2)
性别,只能取“男”或“女”
出生日期
date
班号
char(10)
表19-4teacher表的结构
列名
数据类型
非空
说明
编号
char(10)
√
主键
姓名
char(10)
√
性别
char
(2)
性别,只能取“男”或“女”
出生日期
date
职称
char(10)
单位
char(16)
表19-5course表的结构
列名
数据类型
非空
说明
课程号
char(10)
√
主键
课程名
char(16)
√
表19-6allocate表的结构
列名
数据类型
非空
说明
班号
char(10)
√
(班号,课程号)主键
课程号为外键
课程号
char(10)
√
教师编号
char(10)
教师编号为外键
表19-7score表的结构
列名
数据类型
非空
说明
学号
char(10)
√
(学号,课程号)主键
学号为外键,课程号为外键
课程号
char(10)
√
分数
float
分数在0-100之间
一、系统功能
1.实现学生基本数据的编辑和相关查询。
2.实现教师基本数据的编辑和相关查询。
3.实现课程基本数据的编辑和相关查询。
4.实现各课程任课教师安排和相关查询。
5.实现学生成绩数据的编辑和相关查询。
6.实现用户管理和控制功能。
二、系统结构
本系统对应的项目为“学生成绩管理系统.sln”,共有20个窗体和1个公共模块。
本项目的启动窗体为pass,该窗体提示用户输入相应的用户名/密码,并判断是否为合法用户。
如果是非法用户(用户名/密码输入错误),则提示用户再次输入用户名/密码,若用户非法输入3次,便自动退出系统运行。
如果是合法用户,则调用main多文档窗体启动相应的菜单,用户通过该系统菜单执行相应的操作。
系统结构图,如图19-1所示。
图19-1系统结构图
三、系统实现
1.公共模块
本项目中包含一个公共模块即CommModule.vb模块,包含一些全局变量和全局函数Exesql。
其中全局变量被本项目中的一些窗体用于在窗体之间传递数据。
全局函数Exesql可以对school数据库中任何表执行Select、Insert、Update和Delete操作,如果是Select操作,返回相应的DataTable对象,如果是Insert、Update或Delete操作,对数据表执行更新,返回空(Nothing)。
具体代码如下:
2.pass窗体
pass窗体用于接受用户的用户名/密码输入,判断是否为合法用户。
如果是合法用户,释放该窗体并启动main窗体;否则释放该窗体不启动main窗体即退出系统运行。
对于合法用户,用全局变量userlevel保存当前用户的级别。
pass窗体设计如图19-2、如表19-8所示。
图19-2pass窗体设计
表19-8pass窗体的控件属性表
控件类型
Name
Text
备注
Form
Pass
用户登录
StartPosition属性:
CenterScreen;Controlbox属性:
false
GroupBox
GroupBox1
登录
Label
Label1
学生成绩管理系统
Label
Label2
用户名
Label
Label3
密码
Button
Button1
登录
Button
Button2
取消
TextBox
TextBox1
TextBox
TextBox2
PasswordChar属性:
*
3.main窗体
main窗体是一个多文档窗体,其中有菜单栏MenuStrip对象和状态栏StatusStrip对象。
main窗体设计如图19-3、如表19-9所示。
图19-3main窗体设计
表19-9main窗体的控件属性表
控件类型
Name
Text
备注
Form
main
学生成绩管理系统
StartPosition属性:
CenterScreen;
Controlbox属性:
false;
WindowState属性:
Maximized
IsMdiContainer属性:
True
MenuStrip
MenuStrip1
MenuStrip1
StatusStrip
StatusStrip1
StatusStrip1
添加ToolStripStatusLabel1
4.editstudent窗体
editstudent窗体用于编辑学生数据,用户可以单击“添加”、“修改”和“删除”按钮执行相应的功能。
当DataGridView1控件中不存在任何学生记录时,“修改”和“删除”按钮不可用。
editstudent窗体设计如图19-4、如表19-10所示。
图19-4editstudent窗体设计
表19-10editstudent窗体的控件属性表
控件类型
Name
Text
备注
Form
editstudent
编辑学生数据
StartPosition属性:
CenterScreen
Controlbox属性:
false
Label
Label1
Label1
DataGridView
DataGridView1
GroupBox
GroupBox1
学生记录操作
Button
AddButton
添加
Button
UpdateButton
修改
Button
DeleteButton
删除
Button
ReturnButton
返回
5.editstudent1窗体
editstudent1窗体被editstudent窗体所调用,以实现student表中记录基本数据的编辑。
用户单击“确定”按钮时,记录编辑有效,即保存用户的修改;单击“取消”按钮时,记录编辑无效,即不保存用户的修改。
editstudent1窗体设计如图19-5、如表19-11所示。
图19-5editstudent1窗体设计
表19-11editstudent1窗体的控件属性表
控件类型
Name
Text
备注
Form
editstudent1
编辑单个学生记录
StartPosition属性:
CenterScreen
Controlbox属性:
false
GroupBox
GroupBox1
学生记录
Label
Label1
学号
Label
Label2
姓名
Label
Label3
性别
Label
Label4
出生日期
Label
Label5
班号
Label
Label6
yyyy/mm/dd
TextBox
TextBox1-4
Radiosex
Radiosex1
男
Radiosex
Radiosex2
女
Button
OkButton
确定
Button
CancelButton
取消
6.querystudent窗体
querystudent窗体实现学生记录的查询。
在设置条件时可以直接从组合框中选择1个班号等。
用户可以通过在“设置查询条件”分组框中输入相应的条件后,单击“确定”按钮,在上方的DataGridView1控件中仅显示满足指定条件的学生记录。
querystudent窗体设计如图19-6、如表19-12所示。
图19-6querystudent窗体设计
表19-12querystudent窗体的控件属性表
控件类型
Name
Text
备注
Form
querystudent
查询学生数据
StartPosition属性:
CenterScreen
Controlbox属性:
false
Label
Label1
Label1
DataGridView
DataGridView1
GroupBox
GroupBox1
设置查询条件
Label
Label2
学号
Label
Label3
姓名
Label
Label4
性别
Label
Label5
班号
TextBox
TextBox1-2
Radiosex
Radiosex1
男
Radiosex
Radiosex2
女
ComboBox
ComboBox1
Button
OkButton
确定
Button
ReSetButton
重置
Button
ReturnButton
返回
7.editteacher窗体
editteacher窗体用于编辑教师基本数据,用户可以单击“添加”、“修改”和“删除”按钮执行相应的功能。
。
当DataGridView1控件中不存在任何教师记录时,右下方的“修改”和“删除”按钮不可用。
editteacher窗体设计如图19-7、如表19-13所示。
图19-7editteacher窗体设计
表19-13editteacher窗体的控件属性表
控件类型
Name
Text
备注
Form
editteacher
编辑教师数据
StartPosition属性:
CenterScreen
Controlbox属性:
false
Label
Label1
Label1
DataGridView
DataGridView1
GroupBox
GroupBox1
教师记录操作
Button
AddButton
添加
Button
UpdateButton
修改
Button
DeleteButton
删除
Button
ReturnButton
返回
8.editteacher1窗体
editteacher1窗体被editteacher窗体所调用,以实现teacher表中记录基本数据的编辑。
用户单击“确定”按钮时,记录编辑有效,即保存用户的修改;单击“取消”按钮时,记录编辑无效,即不保存用户的修改。
editteacher1窗体设计如图19-8、如表19-14所示。
图19-8editteacher1窗体设计
表19-14editteacher1窗体的控件属性表
控件类型
Name
Text
备注
Form
editteacher1
编辑单个教师记录
StartPosition属性:
CenterScreen
Controlbox属性:
false
GroupBox
GroupBox1
教师记录
Label
Label1
编号
Label
Label2
姓名
Label
Label3
性别
Label
Label4
出生日期
Label
Label5
职称
Label
Label6
单位
Label
Label7
yyyy/mm/dd
TextBox
TextBox1-3
TextBox1-3
Radiosex
Radiosex1
男
Radiosex
Radiosex2
女
ComboBox
ComboBox1
ComboBox1
ComboBox
ComboBox2
ComboBox2
Button
OkButton
确定
Button
CancelButton
取消
9.queryteacher窗体
queryteacher窗体用于教师记录的查询。
用户可以通过在设置查询条件分组框中输入相应的条件后,单击“确定”按钮,在上方的DataGridView1控件中仅显示满足指定条件的教师记录。
queryteacher窗体设计如图19-9、如表19-15所示。
图19-9queryteacher窗体设计
表19-15queryteacher窗体的控件属性表
控件类型
Name
Text
备注
Form
queryteacher
查询教师数据
StartPosition属性:
CenterScreen
Controlbox属性:
false
Label
Label1
Label1
DataGridView
DataGridView1
GroupBox
GroupBox1
设置查询条件
Label
Label2
编号
Label
Label3
姓名
Label
Label4
性别
Label
Label5
职称
Label
Label6
单位
TextBox
TextBox1-2
Radiosex
Radiosex1
男
Radiosex
Radiosex2
女
ComboBox
ComboBox1
ComboBox
ComboBox2
Button
OkButton
确定
Button
ReSetButton
重置
Button
ReturnButton
返回
10.editcourse窗体
editcourse窗体用于编辑课程基本数据,用户可以单击“添加”、“修改”和“删除”按钮执行相应的功能。
当DataGridView1控件中不存在任何课程记录时,“修改”和“删除”按钮不可用。
editcourse窗体设计如图19-10、如表19-16所示。
图19-10editcourse窗体设计
表19-16editcourse窗体的控件属性表
控件类型
Name
Text
备注
Form
editcourse
编辑课程数据
StartPosition属性:
CenterScreen
Controlbox属性:
false
Label
Label1
Label1
DataGridView
DataGridView1
GroupBox
GroupBox1
课程记录操作
Button
AddButton
添加
Button
UpdateButton
修改
Button
DeleteButton
删除
Button
ReturnButton
返回
11.editcourse1窗体
editcourse1窗体被editcourse窗体所调用,以实现course表中记录基本数据的编辑。
用户单击“确定”按钮时,记录编辑有效,即保存用户的修改;单击“取消”按钮时,记录编辑无效,即不保存用户的修改。
editcourse1窗体设计如图19-11、如表19-17所示。
图19-11editcourse1窗体设计
表19-17editcourse1窗体的控件属性表
控件类型
Name
Text
备注
Form
editcourse1
编辑单个课程记录
StartPosition属性:
CenterScreen
Controlbox属性:
false
GroupBox
GroupBox1
课程记录
Label
Label1
课程号
Label
Label2
课程名
TextBox
TextBox1-2
TextBox1-2
Button
OkButton
确定
Button
CancelButton
取消
12.querycourse窗体
querycourse窗体实现学生记录的通用查询。
用户可以通过在设置查询条件分组框中输入相应的条件后,单击“确定”按钮,在上方的DataGridView1控件中仅显示满足指定条件的课程记录。
querycourse窗体设计如图19-12、如表19-18所示。
图19-12querycourse窗体设计
表19-18querycourse窗体的控件属性表
控件类型
Name
Text
备注
Form
queryteacher
查询课程数据
StartPosition属性:
CenterScreen
Controlbox属性:
false
Label
Label1
Label1
DataGridView
DataGridView1
GroupBox
GroupBox1
设置查询条件
Label
Label2
课程号
Label
Label3
课程名
TextBox
TextBox1-2
Button
OkButton
确定
Button
ReSetButton
重置
Button
ReturnButton
返回
13.allocateCourse窗体
allocateCourse窗体用于安排某班某课程的任课教师。
用户可以单击“安排新课程”、“修改任课教师”和“删除课程安排”按钮执行相应的功能。
当DataGridView1控件中不存在任何课程安排记录时,“修改任课教师”和“删除课程安排”按钮不可用。
allocateCourse窗体设计如图19-13、如表19-19所示。
图19-13allocateCourse窗体设计
表19-19allocateCourse窗体的控件属性表
控件类型
Name
Text
备注
Form
allocateCourse
安排任课教师
StartPosition属性:
CenterScreen
Controlbox属性:
false
Label
Label1
Label1
DataGridView
DataGridView1
GroupBox
GroupBox1
任课教师操作
Button
AddButton
安排新课程
Button
UpdateButton
修改任课教师
Button
DeleteButton
删除课程安排
Button
ReturnButton
返回
14.allocateCourse1窗体
allocateCourse1窗体被allocateCourse窗体所调用,以实现某班某课程的任课教师编辑。
若是安排新课程,需选择班号和课程号,然后指定对应的教师编号;若是修改任课教师,班号和课程号不能修改,只需选择相应的任课教师编号。
用户单击“确定”按钮时,本次安排或修改任课教师记录有效,即保存所作的修改;单击“取消”按钮时,本次安排或修改任课教师记录无效,即不保存所作的修改。
allocateCourse1窗体设计如图19-14、如表19-20所示。
图19-14allocateCourse1窗体设计
表19-20allocateCourse1窗体的控件属性表
控件类型
Name
Text
备注
Form
allocateCourse1
安排任课教师
StartPosition属性:
CenterScreen
Controlbox属性:
false
GroupBox
GroupBox1
安排课程记录
Label
Label1
班号
Label
Label2
课程号
Label
Label3
教师编号
ComboBox1-3
ComboBox1-3
DropDownStyle属性设置为DropDownList
Button
OkButton
确定
Button
CancelButton
取消
15.queryallocate窗体
queryallocate窗体实现课程安排记录的通用查询。
用户可以通过在设置查询条件分组框中输入相应的条件后,单击“确定”按钮,在上方的DataGridView1控件中仅显示满足指定条件的课程安排记录。
queryallocate窗体设计如图19-15、如表19-21所示。
图19-15queryallocate窗体设计
表19-21queryallocate窗体的控件属性表
控件类型
Name
Text
备注
Form
queryallocate
查询课程安排数据
StartPosition属性:
CenterScreen
Controlbox属性:
false
Label
Label1
Label1
DataGridView
DataGridView1
GroupBox
GroupBox1
设置查询条件
Label
Label2
班号
Label
Label3
课程号
Label
Label4
教师编号
ComboBox1-3
ComboBox1-3
Button
OkButton
确定
Button
ReSetButton
重置
Button
ReturnButton
返回
16.editscore窗体
editscore窗体用于产生和编辑学生成绩数据。
DataGridView1控件中仅显示满足指定条件的学生成绩记录,其中学号和课程号是不可修改的,只可以编辑分数。
如果指定课程号的学生成绩记录不存在,可以单击“产生空白成绩表”按钮,先产生一个没有分数的成绩表,然后再输入学生分数。
如果指定课程号的学生成绩记录已存在,可以单击“清除课程成绩表”按钮,删除该课程号的学生成绩记录。
输入或修改学生的分数,单击“保存成绩”按钮将本次编辑保存到score表中。
editscore窗体设计如图19-16、如表19-22所示。
注意:
由于Oracle中,由于有1个score的公有同义词,和score
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验十九 Oracle数据库系统开发实例学生成绩管理系统 实验 十九 Oracle 数据库 系统 开发 实例 学生 成绩管理系统