数据库原理-课程设计:高校学籍管理系统

发布时间:2020-08-03 04:31:41   来源:文档文库   
字号:

郑州轻工业学院

目:

高校学籍管理系统

名:

院(系):

数学与信息科学学院

专业班级:

信科11-1

号:

指导教师:

间:

201515日至2015110



一、基本要求及主要内容

课程设计基本要求如下:

1)每个同学从下面题目中任选一个作为课程设计的题目,调查分析一个具体的或模拟的实例,完成课程设计报告

2)描述该实例的业务信息和管理工作的要求;

3)列出实体、联系;

4)指出实体和联系的属性;

5)画出E-R图;

6)将E-R图转换成关系模式,并注明主码和外码;

7)建立数据字典;

8)创建数据库;

9)根据题目的要求写查询、存储过程、触发器等。

10)利用之前学习过的PowerBuilderCC++Java等软件开发工具开发相应的信息系统。(该要求为额外要求,完成者可给高分)

课程设计可选题目如下:

1. 学校图书借阅管理系统

功能要求:

实现图书信息、类别、出版社等信息的管理;

实现读者信息、借阅证信息的管理;

实现图书的借阅、续借、归还管理;

实现超期罚款管理、收款管理;

创建触发器,分别实现借书和还书时自动更新图书信息的在册数量;

创建视图查询各种图书的书号、书名、总数和在册数;

创建存储过程查询指定读者借阅图书的情况;

建立数据库相关表之间的参照完整性约束。

2. 高校学籍管理系统

功能要求:

实现学生信息、班级、院系、专业等的管理;

实现课程、学生成绩信息管理;

实现学生的奖惩信息管理;

创建规则用于限制性别项只能输入

创建视图查询各个学生的学号、姓名、班级、专业、院系;

创建存储过程查询指定学生的成绩单;

创建触发器当增加、删除学生和修改学生班级信息时自动修改相应班级学生人数;

建立数据库相关表之间的参照完整性约束。

3. 某学校的题库管理系统

实现课程、题型等基本信息的管理;

能管理每一门课程的题型,每门课程的章节;

实现习题信息的管理,能按题型或章节录入每门课程的习题;

定义存储过程查询指定课程各种题型和各章节的习题数量;

定义视图查询各门课程使用的题型;

设每个习题有一个题号,题号由系统自动生成,要求从1开设编号;

设每个习题都有习题的建立日期,其值为系统时间,请定义实现(用默认实现);

定义存储过程实现查询各门课程、各种题型的习题数量;

可以自动抽题组成套题,习题每抽取一次,要使习题的抽取次数加1(用触发器实现);

建立数据库相关表之间的参照完整性约束。

4. 某电力公司收费管理信息系统

实现客户信息、用电类型(类别号、类别名、电价)及业务员管理;

实现客户用电信息管理(客户号、月份、用电类别号、用电度数);

实现客户费用管理(客户号、月份、费用、收费标志),收费标志的默认值为未收

实现收费登记(客户、月份、应收费用、实收费用、业务员),并自动修改收费标志(用触发器实现);

创建触发器,实现收费时自动更加应收费用和实收费用,计算本次结余,然后修改客户信息表中的结余金额;

创建存储过程统计指定月份应收费用和实收费用;

创建存储过程查询指定月份未交费的用户信息,以便崔费;

创建规则使得月份符合格式“××××××,并邦定到表中相应字段;

建立表间关系。

5. 房屋租赁管理系统

某房屋租赁公司欲建立一个房屋租赁服务系统,统一管理房主和租赁者信息,以便快速地提供租赁服务。该系统具有以下功能:

登记房主信息。对于每名房主,系统需登记其姓名、住址和联系电话。

登记房屋信息。所有在系统中登记的房屋都有一个唯一的识别号(对于新增加的房屋,系统会自动为其分配一个识别号)。除此之外,还需登记房屋的地址、房型(如平房、带阳台的楼房、独立式住宅等)、最多能容纳的房客数、租金及房屋状态(待租赁、已出租)。一名房主可以在系统中登记多个待租赁的房屋。

登记租赁者信息。所有想通过该系统租赁房屋的租赁者,必须事先在系统中登记个人信息,包括:姓名、住址、电话号码、身份证编号、性别。

租赁房屋。已经在系统中登记的租赁者,可以得到一分系统提供的待租赁房屋列表。一旦租赁者从中找到合适的房屋,就可以提出看房请求。系统会安排租赁者与房主见面。对于每次看房,系统会生成一条看房记录。

收取手续费。每成功一次租赁服务,系统根据租赁价格按比例生成费用清单。

变更房屋状态。当租赁者与房主达成租房或退房协议后,房主向系统提交变更房屋状态请求。

用户论坛。租赁者在论坛上寻找合租对象、与房主进行交流。

二、主要参考文献

[1] 王珊,萨师煊等,数据库系统概论(第四版),北京:高等教育出版社,2006.

[2] 其他所参考的书籍、资料按照上个参考文献的格式填写在这个地方。

完成期限:

2015112

指导教师签名:

时海亮,裴云霞

课程负责人签名:

时海亮

20141225



随着我国教育体制改革的深入进行教育系统得到了前所未有的发展。信息社会的高科技商品经济化的高效益使计算机的应用已普及到经济和社会生活的各个领域。学校的规模不断扩大学生数量急剧增加大学类别和专业设置多样化使得大学生的学籍信息管理变得非常繁琐,这时就需要有学籍信息管理系统来提高学生管理工作的效率,达到信息的规范管理、科学统计和快速查询的目标,从而减少管理方面的工作量和减少人为的错误。

学生学籍管理系统,旨在探索一种以互联网为平台的管理模式。这种新的管理模式,使教务管理突破时空限制,实现管理的网络化,提高管理效率和标准化水平。使学校管理者、教师和学生可以在任何时候、任何地点通过网络进行管理与查询,让管理者从繁重的工作中解脱出来,将主要精力转移到创造性的教学改革工作中。系统是一个典型的信息管理系统,主要完成对学生基本信息、教师信息、院系信息、专业信息、课程信息、成绩信息和奖惩信息等多种数据信息的管理,即对数据库中表的录入、修改、删除和查询等功能

该软件是以SQL语言为实现语言,采用SQL Server数据库管理系统其功能在系统内部有源代码直接完成。操作人员只需输入一些简单的汉字、数字,即可达到自己的目标





1 问题描述

以现代计算机技术、网络技术为基础的数字化教学正朝着信息化、网络化、现代化的目标迈进。如与网络技术相结合的新型学生学籍管理模式,对教育、教学过程有着极为宝贵的特性,可以为新型的办学模式提供一个信息化的平台。

为高校提供一个网络服务平台:用户能打破时空界限,能通过网络实现学籍信息管理的过程。

为工作人员提供一个工作平台:工作人员可在系统上完成学籍管理事务,实现无纸化办公。即工作人员通过计算机完成采集信息,处理信息,分析信息等工作。减少学校管理学生的工作任务,降低管理成本。

为管理者提供一个控制平台:管理者能通过该系统对学生、教师和课程等进行管理(增删改查)。能够管理所有学生的各类信息查询,包括基本信息和选课信息的查询。

学籍信息管理系统是学校有效管理学生的重要管理工具,其

学生信息管理,主要负责管理学生基本信息。

学生管理,主要负责管理课程信息和学生选课信息。

学生成绩管理,主要负责教师录入学生成绩的增删改,以及学生对自己成绩的查询。

学生奖惩管理,主要负责对学生受到奖励或者惩处的信息进行。

系统管理员管理,主要负责管理(查询、统计)用户信息和用户登录,以及配置系统参数。



2 需求分析

(提示:主要内容是根据给定的设计课题,绘制的DFDDD图表以及书写相关的文字说明。)

2.1功能需求分析

学籍管理系统的功能需求包括管理员对功能的需求,学生对功能的需求,以及教师对功能的需求三大部分:

管理员对功能的需求:管理员权限最大,可以对学生、教师、课程进行管理,包括对学生学籍信息的增删改查,对教师信息的增删改查,以及对课程信息的增删改查等

学生对功能的需求学生只是利用此系统修改自己的登录密码,查询自己的学籍信息,查询课程信息,进行选课,查询成绩。

师对功能的需求:教师利用该系统可以修改自己的登录密码,查询自己的信息,查询自己的授课信息,还对学生和课程进行管理,录入、修改学生的成绩。

2.2性能分析

系统应具有高度的可靠性系统作为支撑学生学籍管理工作的基础环境,系统出现故障将直接影响学校正常的工作进程,所以系统必须具有高可靠性。

系统应具有良好的可操作性系统的使用者大多为普通操作人员,因此系统的界面操作应方便简单、使用户能够易学易。

系统应具有较强的安全保密性系统应提供安全可靠的数据操作权限,特定的人员只能对特定的信息进行管理

2.3 系统功能结构

学籍信息管理系统主要包括学生信息管理模块、学生课程管理模块、学生成绩管理模块、奖惩信息管理模块和系统管理员管理模块。具体的模块图如图所示

1.系统功能结构图

其系统功能模块说明如下:

学生信息管理模块:该模块主要负责所有在校学生的个人基本信息。学生通过这个模块,可以查询自己在校的学籍信息,以及修改自己的登录密码等。管理员通过这个模块可以增加、删除、更改、查询学生的学籍信息。

学生课程管理模块:该模块主要负责管理全校师生的课程信息。主要功能包括增加、删除、更改、查询课程信息,其中只有管理员才具有对课程信息进行维护的权限(增加、删除、更改)。学生课程管理模块是选课管理模块的基础,只有在课程管理中添加选修课的信息,学生才能进行选课。针对选课模块,其功能行使者是学生,学生通过浏览全部的课程信息,选择符合自己要求的课程。

学生成绩管理模块:该模块的功能主要由老师所拥有。对于选择自己所教授课程的学生,老师具有给定该学生的专业分数和修改该学生的专业分数的权限,而学生只具有查询自己专业成绩的权限。

奖惩信息管理模块:该模块主要负责学生受奖励或受批评的公告信息。由学校管理员负责发布。

系统管理员管理模块:该模块由系统管理员全权拥有,负责管理学生、管理教师、管理课程等功能模块。

2.4 数据字典

数据字典的数据项如下列表所示:

1 院系信息表

序号

字段

别名

数据类型

数据长度

1

dmpno

院系号

varchar

10

2

dname

院系名

varchar

10

3

dmphead

院长名

varchar

10

2 专业信息表

序号

字段

别名

数据类型

数据长度

1

mno

专业号

varchar

10

2

mname

专业名

char

10

3

sno

学号

varchar

10

4

intime

入学时间

datetime

3 学生基本信息表

序号

字段

别名

数据类型

数据长度

1

sno

学号

varchar

10

2

sname

姓名

varchar

10

3

ssex

性别

Char

2

4

birthday

出生日期

timestamp

20

5

phone

联系电话

varchar

20

6

nation

民族

varchar

10

7

birthplace

籍贯

varchar

10

8

symbol

政治面貌

varchar

10

9

ID

身份证号

varchar

20

10

intime

入学时间

varchar

20

11

homeaddress

家庭住址

varchar

40

12

postcode

邮政编码

int

4 教师基本信息表

序号

字段

别名

数据类型

数据长度

1

tno

教工

varchar

10

2

tname

姓名

varchar

10

3

tsex

性别

char

2

4

profess

职称

varchar

20

5

dname

所属院系

varchar

20

6

tphone

联系电话

Varchar

20

5 课程信息表

序号

字段

别名

数据类型

数据长度

1

cno

课程号

varchar

10

2

cname

课程名

char

10

3

credit

学分

smallint

4

ctime

学时

varchar

10

5

ctest

考核方式

varchar

10

6 学生选课信息表

序号

字段

别名

数据类型

数据长度

1

sno

学号

varchar

10

2

cno

课程号

varchar

10

3

grade

成绩

int

7 教师授课信息表

序号

字段

别名

数据类型

数据长度

1

tno

教工

varchar

10

2

cno

课程

varchar

10

3

ctime

课时

varchar

10

4

teacheffect

授课效果

varchar

10

2.5 数据流图

学生登记表 学生选课表 教师登记表



3 概念结构设计

(提示:主要内容是绘制所选课题详细的E-R图。)

3.1 局部E-R

根据需求分析得到的具体要求,绘制局部ER 图如下所示

学生E-R

教师E-R

课程E-R

3.2 全局E-R

学籍管理系统E-R



4 逻辑结构设计

(提示:主要内容是将E-R图转换成等价的关系模式;按需求对关系模式进行规范化;对规范化后的模式进行评价,调整模式,使其满足性能、存储等方面要求;根据局部应用需要设计外模式。)

4.1 关系模型

E-R图转换为关系模型实际上就是要奖实体型、实体的属性和实体型之间的联系转换为关系模式,这种转换一般遵循如下原则:一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。现将概念结构设计阶段设计好的基本E-R图转换为关系模型,如下所示:

院系(院系号、院系名、院长名,这是院系实体对应的关系模式。

专业(专业号、专业名、学号、入学时间,这是专业实体对应的关系模式。

学生学号、姓名、性别、出生日期、联系电话、民族、籍贯、政治面貌、身份证号、入学时间、家庭地址邮政编码),这是学生实体对应的关系模式

教师(教工号、姓名、性别、职称、所属院系、联系电话),这是教师实体对应的关系模式。

课程课程号、课程名、学时、学分、考核方式),这是课程实体对应的关系模式

选课学号、课程号成绩),

授课教工号、课程号课时、授课效果

4.2 基本表

基本表在SQL server 2008如下所示:

院系信息表

专业信息表:

学生基本信息表:

教师基本信息表:

学生选课信息表:

教师授课信息表:

4.3 视图

查看学生信息视图:

Create view student_view

As select

( sno,sname,ssex,birthday,phone,nation,birthplace,symbol,ID,

intime,homeadress,postcode)from student;

查看课程视图:

Create view course_view

As select (cno,cname,credit,ctime,ctest) from course;

查询选课视图(查成绩):

create view XK_view

As select (sname,sno,cno,grade)from XK;

4.4 触发器设计

创建用于限制性别项只能输入“0”或“1.(其中“0”代表男,1”代表女.)

create table student(ssex Char(1)

CONSTRAINT C4 CHAECK(ssex IN(0,1)),

CONSTRAINT studentKey PRIMARY(sno)

);

建立触发器,当删除Student表中某一学生信息时,触发成绩表删除相应记录。

Create trigger student-delete

On student

For delete

As

Delete Fraction From deleted

Where student.sno=deleted.sno

5 物理结构设计

(提示:主要内容是选定实施环境,存取方法等。简单介绍即可)

数据库在物理设备上的存储结构与存取方法成为数据库的物理结构,它依赖于选定的数据库管理系统。为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。

数据库的物理设计通常分为两步:

(1) 确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构

(2) 对物理进行评价,评价的重点是时间和空间效率。

关系数据库物理设计的内容主要包括:

(1) 为关系模式选择存取方法;常用的存储方法有索引法(B+树法)、聚簇法和HASH方法。

(2) 设计关系、索引等数据库文件的物理存储结构。

确定数据库物理结构主要指确定数据的存放位置和存储结构,包括:确定关系、索引、聚簇、日志、备份等的存储安排和存储结构,确定系统配置等。

评价屋里数据库的方法完全依赖于所选用的DBMS,主要是从定量估算各种方案的存储空间、存储时间和维护代价入手,对估算结果进行权衡、比较,选择出一个较优的合理的物理结构

5.1数据库物理设计基本表设计

院系信息表:(主码:院系号)

专业信息表:(主码:专业号)

学生信息表:(主码:学号)

教师信息表:(主码:教工号)

学生选课表:(外码:学号,课程号)

学生选课表:(外码:教工号,课程号)

5.2学生信息界面设计代码实现

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace 学生学籍管理系统

{

public partial class Form2 : Form

{

public Form2()

{

InitializeComponent();

}

private void label6_Click(object sender, EventArgs e)

{

}

private void Form2_Load(object sender, EventArgs e)

{

}

private void button1_Click(object sender, EventArgs e)

{

SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;

AttachDbFilename=C:\Users\Administrator\Desktop\student\学生学籍管理系统.mdf;Integrated Security=True;User Instance=True");

con.Open();

string strsql = "select * from 学生基本信息表 where sno='" +sno.Text + "'";

SqlCommand cmd = new SqlCommand(strsql, con);

SqlDataReader rd = cmd.ExecuteReader();

while (rd.Read())

{

Sno.Text = rd["sno"].ToString();

Name.Text = rd["sname"].ToString();

Sex.Text = rd["ssex"].ToString();

Birth.Text = rd["birthday"].ToString();

Tel.Text = rd["phone"].ToString();

Nati.Text = rd["nation"].ToString();

Birp.Text = rd["birthplace"].ToString();

Sym.Text = rd["symbol"].ToString();

IDcard.Text = rd["ID"].ToString();

Inter.Text = rd["intime"].ToString();

Homeadd.Text = rd["homeadress"].ToString();

Post.Text = rd["postcode"].ToString();

}

rd.Close();

}

private void button2_Click(object sender, EventArgs e)

{

SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Administrator\Desktop\student\学生学籍管理系统.mdf;Integrated Security=True;User Instance=True");

con.Open();

string strsql = "insert into 学生基本信息表 values('" + Sno.Text + "','" + Name.Text + "','" + Sex.Text + "','" + Birth.Text + "','" + Tel.Text + "','" + Nati.Text + "','" + Birp.Text + "','" + Sym.Text + "','" + IDcard.Text + "','" + Inter.Text + Homeadd.Text + "','"+ "','"+Post.Text + "')";

SqlCommand cmd = new SqlCommand(strsql, con);

cmd.ExecuteNonQuery();

MessageBox.Show("插入数据成功");

con.Close();

}

private void button4_Click(object sender, EventArgs e)

{

SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Administrator\Desktop\student\学生学籍管理系统.mdf;Integrated Security=True;User Instance=True");

con.Open();

string sql = "delete from 学生基本信息表 where sno='" + sno.Text + "'";

SqlCommand cmd = new SqlCommand(sql, con);

cmd.ExecuteNonQuery();

MessageBox.Show("删除数据成功");

con.Close();

}

private void button3_Click(object sender, EventArgs e)

{

Sno.Text = "";

Name.Text = "";

Sex.Text = "";

Birth.Text = "";

Tel.Text = "";

Nati.Text = "";

Birp.Text = "";

Sym.Text = "";

IDcard.Text = "";

Inter.Text = "";

Homeadd.Text = "";

Post.Text = "";

MessageBox.Show("清空成功");

}

}

}

5.2 学生信息简略

添加学生信息界面如下所示:



6 数据库的实施与维护

(提示:主要内容是用MS SQL SERVER或其他DBMS建立数据库结构,加载(测试/虚拟)数据,能体现对数据库的保护(安全性和完整性控制等)。实现各种查询、链接应用程序,并能对数据库做简单的维护操作。简单介绍即可)

6.1 数据库的实施和试运行

数据库的实施主要是用具体的DBMS提供的数据定义语言(DDL),把数据库的逻辑结构设计和物理结构设计的结果转化为程序语句,DBMS编译处理和运行,实际的数据库便建立起来了。目前很多DBMS系统除了提供传统的命令行方式外,还提供了数据库结构的图形化定义方式,极大地提高了工作的效率。

具体建立数据库结构包括以下几个方面:

数据库模式与子模式,以及数据库空间的描述

数据安全性描述

数据完整性描述

数据库物理存储参数的描述

6.2 数据库的运行和维护

对数据库经常性的维护工作主要由数据库管理员(DBA完成,主要包括:

数据库的转和恢复

数据库的安全性、完整性控制

数据库性能监督、分析和改造

数据库的重组织和重构造。



7 小结

(提示:主要内容是总结课程设计的过程、体会及建议。)

这次学生学籍管理系统数据库设计,对我来说是一次尝试与创新的过程,也可以说是一个挑战的过程现在利用自己学到的知识设计并制作一个学生学籍管理系统数据库,这本身就是一个知识转化为生产力的过程在具体的设计与实施中,我看到并感受到了一个管理系统数据库从无到有的过程,对具体的设计步骤、思路、方法、技巧都有了进一步的了解,并感受深刻。这次课程设计加深了我们对数据库系统设计相关知识以及SQL SERVER相关功能的理解,比如在建立基本的表、视图、索引、存储过程、触发器等。

在设计中我基本能按照规范的方法和步骤进行,首先对学生学籍管理系统进行调查,并查阅有关资料,最后确定设计方案并制作,实施过程中我深刻的认识到认真执行管理系统软件标准的重要性。但由于时间比较仓促,而我在知识与经验方面还存在许多欠缺,因此在需求分析时未能做到满足用户的所有需求,因此还需要加强了解。

之,学无止境,把握机会,努力学习,为毕业设计加油!



8 参考文献

[1] 王珊,萨师煊等,数据库系统概论(第四版),北京:高等教育出版社,2006.

[2] 贾讽波,杨树青,杨玉顺.数据库应用实例.北京:人民邮电出版社.2006.

[3] 张健沛.数据库原理及应用系统开发[M]. 北京:水利水电出版社,1999.

[4] 罗晓芾.数据库技术(高级)[M].北京:清华大学出版社,1999.



课程设计成绩评定表

评定项目

满分

评分

总分

学习态度

学习认真,态度端正,遵守纪律。

10

答疑和设计情况

认真查阅资料,勤学好问,提出的问题有一定的深度,分析解决问题的能力较强。

40

说明书质量

设计方案正确、表达清楚;设计思路、实验(论证)方法科学合理;达到课程设计任务书规定的要求;图、表、文字表达准确规范,上交及时。

40

回答问题情况

回答问题准确,基本概念清楚,有理有据,有一定深度。

10

总成绩

采用五级分制:优、良、中、及格、不及格

指导教师评语:

签名:

本文来源:https://www.2haoxitong.net/k/doc/e27f4bfd6ad97f192279168884868762cbaebb0d.html

《数据库原理-课程设计:高校学籍管理系统.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式