数据库课程设计学生信息管理系统教程文件.docx
- 文档编号:1567233
- 上传时间:2022-10-23
- 格式:DOCX
- 页数:14
- 大小:155.60KB
数据库课程设计学生信息管理系统教程文件.docx
《数据库课程设计学生信息管理系统教程文件.docx》由会员分享,可在线阅读,更多相关《数据库课程设计学生信息管理系统教程文件.docx(14页珍藏版)》请在冰豆网上搜索。
数据库课程设计学生信息管理系统教程文件
数据库程序设计说明书
一.引言
本程序是一个学生信息数据库系统的程序,随着效率和质量提出了越来越高的要求。
学生管理信息系统广泛地应用于各大中院校的学生管理工作过程中,几乎每个进行了信息化建设的学校都建设了学生管理信息系统。
对于大型和结构复杂、内容繁多的学生数据库,都要实现方便的管理。
数据管理离不开数据库系统的支持。
由于数据库系统一般用户难以熟悉和正确操作,所以开发数据库连接程序提供友好的界面,方便用户提高效率和操作的准确性。
二.编写目的
本说明数据库程序设计需要解决的问题以及问题的性质、程序目标、程序规模等。
并且为了用户对系统的要求,使编程人员可以及时发现软件的缺点和不足,进一步认识问题所在。
该说明书可供设计人员和开发人员参考,也可供用户阅读,对系统的需求提出意见。
开发本软件的目的是给学生数据库提供一个操作控制系统,可以对数据库进行查询、添加、删除、修改、SQL语言高级操作。
三.背景
学校部门中有着相当庞大的数据内容,而这些数据只是作为单纯数据摆放在电脑里,并没有真正使这些数据起到更大的作用。
大量数据的手工操作也会是数据操作错误增加,而且还使得相关的工作更加冗长、繁锁,为了使这些数据为使用者起到更多的作用,为管理人员提供依据与分析,建立起了自己的数据库系统,由计算机管理代替手工操作,进行收集、管理业务数据,从而提高操作人员的工作效率。
数据库技术是当今信息管理的最新技术,其核心就是数据库管理系统(简称DBMS)。
DBMS是各类管理信息系统的支撑平台,也是信息化建设中需求量最大、应用最广泛的基础性软件。
四、系统需求分析
1.要求系统可以准确地记录和查询学生信息,包括学生的姓名、单位、年龄、性别等。
2.要求系统可以准确地记录学生地每一次奖惩情况以及每次的缺勤情况。
3.系统可以对课程情况进行管理,包括设置课程名称、修改课程的名称等。
4.系统应该可以对基础数据进行维护。
5.系统应该有很好的可扩展性。
学生成绩管理工作是学校学生管理工作的重要组成部分,现在相当一部分学校的学生成绩管理工作仍沿用手工方式。
随着学校规模的扩大、学生人数的增加,效率低下、容易出错的手工方式越来越不适应实际管理工作的需要,按照软件工程原理和数据库技术开发学生成绩管理系统已成为学生管理部门的迫切需要。
本实验实现的学生成绩管理系统主要包括以下功能:
1. 完成数据的录入和修改,并提交数据库保存。
其中的数据包括:
学生信息、课程设置、学生成绩以及操作员信息等;
2. 实现信息查询。
主要包括:
学生信息查询、课程信息查询和成绩查询等;3. 具备一定的安全性管理功能。
包括操作员的权限设置、密码设置、重新登录等功能。
分析需求就是描述系统的需求,通过定义系统中的关键域类来建立模型。
学生管理信息系统的需求分析也应该是开发人员和用户或者客户一起完成的。
分析需求的第一步描述学生管理信息系统的功能,即定义用例,以此确定系统的功能需求。
学生管理信息系统的用例分析主要涉及规格说明的阅读和分析,需要和学生管理信息系统的潜在用户进行讨论。
学生管理系统的角色是管理者和系统管理员。
管理者是管理学生的人员,如教务处或者学生处的员工,他也是系统的用户,而系统管理员是系统管理者,虽然系统管理员也是一个员工,但这并不影响本系统的功能。
同样,管理者也可能是一个学生,但这也不影响系统的功能。
学生管理信息系统的用例主要包括如下内容。
● 记录学生情况
● 修改学生信息
● 查询学生情况
● 记录学生奖惩情况
● 设置选修情况情况
● 设计选修课程
五.系统设计
1.系统总体设计
本程序客户端负责提供表达逻辑、显示用户界面信息、访问数据库服务器,采用
C++Builder6作为开发工具;服务器端则用于提供数据服务,采用SQLServer2000作为数据库管理系统。
本系统按照功能划分为以下四个模块:
学生管理(包括学生信息录入和学生信息查询)、课程管理(包括课程设置和课程查询)、成绩管理(包括成绩录入和成绩查询)和系统管理(包括重新登录和操作员管理等)。
系统的功能模块图如图1所示:
六.数据定义
1.数据表说明
1.Student表:
学号(Sno),姓名(Sname),性别(Ssex),年龄(Sage),专业(Sdept)
2.Course表
课程号(Cno),课程名(Cname),先行课号(Cpno),学分(Ccredit)
3.SC表
学号(Sno),课程号(Cno),学分(Grade)
七.结构设计
1.概念结构设计
说明本数据库将反映的现实世界中的实体、属性和它们之间的关系等的原始数据形式,包括各数据项、记录、系、文卷的标识符、定义、类型、度量单位和值域,建立本数据库的每一幅用户视图。
本系统主要有学生和课程两个实体集,一个学生可以选修若干门课程,一门课程也可以被多个学生选修,两个实体集之间是多对多联系,联系上有选课成绩。
本系统的E-R图如下图:
由于数据要求简单,没有什么冗余过多的数据,所以数据库没有为程序建立视图,直接在表中操作,提高效率。
2.逻辑结构设计
数据库逻辑结构设计
根据关系模型的转换原则,上面的E—R图可转换为如下所示的关系模型:
Student(Sno,Sname,Sex,Sdept)
其中各项含义分别为:
学生(学号,姓名,性别,所在系)
Course(Cno,Cname,Cpno,Credit)
其中各项含义分别为:
课程(课程号,课程名称,先行课号,学分)
SC(Sno,Cno,Grade)
其中各项含义分别为:
选修(学号,课程号,成绩)
说明把上述原始数据进行分解、合并后重新组织起来的数据库全局逻辑结构,包括所确定的关键字和属性、重新确定的记录结构和文卷结构、所建立的各个文卷之间的相互关系。
ER图
3.物理结构设计
4.数据字典设计
1学生信息表Student的表结构
主码
列名
数据类型
宽度
小数位
空否
备注
Pk
Sno
Char
10
N
学号
Sname
Char
20
Y
姓名
Sex
Char
2
Y
性别
Sage
Int
4
Y
年龄
Sdept
Char
20
Y
所在系
2课程信息表Course的表结构
主码
列名
数据类型
宽度
空否
备注
Pk
Cno
Char
5
N
课程代码
Cname
Char
20
Y
课程名称
Cpno
Char
5
Y
先行课号
Credit
Smallint
2
Y
学分
3选课成绩表SC的表结构
主码
列名
数据类型
宽度
小数位
空否
备注
Pk
Sno
Char
10
N
学号
Cno
Char
5
N
课程代码
Grade
Decimal
4
1
Y
成绩
系统的功能模块图
6.系统设计
一.结合C++Builder进行数据库,设计过程可按如下步骤进行:
● 创建应用库及应用对象;
● 创建全局变量;
● 创建菜单;
● 创建数据窗口;
● 创建窗口并在窗口中放置所需控件。
●创建应用库及应用对象
1.创建登陆窗体
2.创建主窗体
●加入连接数据库控件,DBGrid,ADODataSet,ADODataCommand,DataSource。
●设置数据库连接,设置控件属性。
●设计窗体界面
3.创建查询窗体
●连接主窗体控件
●设置查询条件
●对查询条件优化
●多表查询设置
4.修改窗体设置
●连接数据库属性
●设置修改项
●确认修改
5.高级查询功能
●高级查询功能提示
●查询窗体设计
八.程序流程图
1.以下是程序功能的主要流程:
3.数据查询流程图
查询开始
输入查询条件
判断查询
查询语句生成
连接数据库,执行语句
结束
No
Yes
查询
查询Button1Click(TObject*Sender)
{
读取查询条件;
转化为String形式语句;
读取查询显示列;
转化为String形式语句;
判断查询语句关系,确定查询要连接的表;
语句连接――>优化----→生成SQL;
输入ADODataSet->CommandText=SQL;
执行成功;
输出结果;
}
修改
修改ButtonClick(TObject*Sender)
{
读取要修改的数据;
显示数据了;
直接修改;
修改确认;
if(确定)修改数据库else放弃修改;
退出
}
查询实现代码如下:
void__fastcallTForm6:
:
Button1Click(TObject*Sender)
{
Stringsno,sname,ssex,sage,sdept,cno,cname,cgrade,ccredit,cpno;
//sno
if(Edit1->Text!
="")sno="andstudent.sno='"+Edit1->Text+"'";
elsesno="";
//sname
if(Edit2->Text!
="")sname="andstudent.sname='"+Edit2->Text+"'";
elsesname="";
//ssex
if(Edit3->Text!
="")ssex="andstudent.ssex='"+Edit3->Text+"'";
elsessex="";
//sage
StringageSel;
ageSel=ComboBox1->Text;
if(ageSel!
=""){
if(Edit4->Text!
="")sage="andstudent.sage"+ageSel+Edit4->Text;
}elsesage="";
//sdept
if(Edit5->Text!
="")sdept="andstudent.sdept='"+Edit5->Text+"'";
elsesdept="";
//cno
if(Edit6->Text!
="")cno="ando='"+Edit6->Text+"'";
elsecno="";
//cname,
if(Edit7->Text!
="")cname="andcname='"+Edit1->Text+"'";
elsecname="";
//cgrade,
StringgradeSel;
gradeSel=ComboBox2->Text;
if(gradeSel!
="")
{
if(Edit8->Text!
="")cgrade="andsc.grade"+gradeSel+Edit8->Text;
}elsecgrade="";
//ccredit
StringcreditSel;
creditSel=ComboBox3->Text;
if(creditSel!
="")
{
if(Edit9->
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 学生 信息管理 系统 教程 文件