学生选课管理系统数据库

学生选课管理系统数据库
学生选课管理系统数据库

目录

一、课程设计的目的和意义 (1)

二、需求分析 (1)

三、概念结构设计(E-R图) (3)

四、逻辑结构设计 (3)

五、数据库实施与维护 (3)

六、界面设计与代码 (6)

七、课程设计心得与体会 (15)

八、参考文献 (16)

学生选课管理信息系统

一、课程设计的目的和意义

数据库课程设计是在学生系统的学习了数据库原理课程后,按照关系型数据库的基本原理,综合运用所学的知识,以小组为单位,设计开发一个小型的数据库管理系统。通过对一个实际问题的分析、设计与实现,将原理与应用相结合,使学生学会如何把书本上学到的知识用于解决实际问题,培养学生的动手能力;另一方面,使学生能深入理解和灵活掌握教学内容。

大型数据库课程设计是计算机专业集中实践性教学环节之一,是学习完《数据库原理及应用》课程后进行的一次全面的综合练习。其目的在于加深对大型数据库课程理论和基本知识的理解,掌握使用数据库进行软件设计的基本方法,提高运用数据库解决实际问题的能力。

培养学生正确的设计思想,理论联系实际的工作作风,严肃认真、实事求是的科学态度和勇于探索的创新精神。培养学生综合运用所学知识与生产实践经验,分析和解决工程技术问题的能力。

二、需求分析

学生选课系统体现在对各种信息的保存、修改和查询。经过仔细分析系统需求之后可知其主要功能,具体功能如下:

可以根据表查询四个表之间属性之间的关系

系统总体设计图如图1所示:

图1 整体设计图

学生选课管理系教师信息 添

加 查 询 修 改 登

教师管理 学生信息 学生管理 选课管理

选课信息 删 除 系统管理 前台操作 选课信息

成绩信息 学生信息 教师信息 成绩信息 学生信息 教师信息 教师信息 成绩信息 数据管理

成绩信息

三、概念结构设计(E-R 图)

E-R 图

四、逻辑结构设计

将E-R 图转换成关系模式: 教师:(教师编号,教师姓名,性别,年龄,学历,职称,毕业院校,健康状况) 学生:(学号,姓名,所属院系,年龄) 选课:(课程编号,课程名称,任课教师,学分) 成绩:(学生学号,课程编号,课程名称,成绩)

五、数据库实施与维护

建立数据库 打开SQL Server 2008,建立数据库:zaq 。 1.在学生选课系统数据库中,添加teacher 表,设置教师编号为主键,不允许为空,如图3所示

教师

选修课程

教授

学生

考试

教授

学分

姓名 性别 编号 编号

名称

任课教师

年龄

学号

1

1

n

1

1

1

成绩

年龄 学历 成绩

课名

职称

学号

获得 n

1

姓名 院系 课程号

图3

右键选择编辑前200行,输入数据,如图4所示

图4

2.添加student表,设置学号为主键,不允许为空,如图5所示:

图5

右键选择编辑前200行,输入数据,如图6所示:

图6

3.添加choose表,设置课程编号为主键,不允许为空,如图7所示:

图7

右键选择编辑前200行,输入数据,如图8所示:

图8

4.添加grade表,设置学生学号,教师编号,课程名称为主键,不允许为空,如图9所示:

右键选择编辑前200行,输入数据,如图10所示:

六、界面设计与代码

1.登录界面

输入已在数据库中的账号和密码,点击登录按钮,如图11所示:

提示登录成功,单击确定进入主窗体

双击登录按钮,更新单击事件处理程序,主要代码如下:

private void button1_Click(object sender, EventArgs e)

{

string userName = txtName.Text.Trim();

string password = txtPwd.Text.Trim();

string connString = @"Data Source=a-think;Initial

Catalog=zaq ;Integrated Security=True;Pooling=False;";

SqlConnection connection = new SqlConnection(connString); //获取用户名和密码匹配的行的数量的SQL语句

string sql = String.Format("select count(*) from [log] where ID='{0}' and PASSWORD='{1}'", userName, password);

try

{

connection.Open();// 打开数据库连接

SqlCommand command = new SqlCommand(sql, connection);

//创建 Command 对象

int num = (int)command.ExecuteScalar();//执行查询语句,返回匹配的行数

if (num > 0)

{

//如果有匹配的行,则表明用户名和密码正确

MessageBox.Show("欢迎进入系统!", "登录成功", MessageBoxButtons.OK, https://www.360docs.net/doc/da545197.html,rmation);

main mainForm = new main(); // 创建主窗体对象

mainForm.Show();// 显示窗体

this.Visible = false; // 登录窗体隐藏

}

else

{

txtPwd.Text = "";

MessageBox.Show("您输入的用户名或密码错误!", "登

录失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

}

}

catch (Exception ex)

{

MessageBox.Show(ex.Message, "操作数据库出错!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

}

finally

{

connection.Close(); // 关闭数据库连接

}

}

}

}

2.主界面

如图10所示:

4.点击教师信息显示下图12,

双击添加按钮,程序代码如下:

private void button2_Click(object sender, EventArgs e)

{

string connString = @"Data Source=A-THINK;Initial

Catalog=zaq ;Integrated Security=True;Pooling=False;";

SqlConnection connection = new SqlConnection(connString);

SqlCommand command = new SqlCommand();

string sql = String.Format("INSERT INTO teacher(教师编号,教师姓名,性别,年龄,学历,职称,毕业院校,健康状况)VALUES('"+ tno1.Text + "','" + tname1.Text + "','" + tsex1.Text + "', '" + tage1.Text + "','" + tdip1.Text + "','"+ tmon1.Text + "','"+ tsch1.Text + "', '"+ thea1.Text + "')");

try

{

connection.Open(); // 打开数据库连接

command.Connection = connection;

https://www.360docs.net/doc/da545197.html,mandText = sql; //设置 Command 对象要执行的SQL语句

int count = command.ExecuteNonQuery(); // 执行更新命令,返回值为更新的行数

if (count > 0)

MessageBox.Show("添加成功", "添加成功",

学生选课数据库SQL语句练习题(详细分解答案)

学生选课数据库SQL语句练习题(详细分解答案)

一、设有一数据库,包括四个表:学生表(Student)、课程表 (Course)、成绩表(Score)以及教师信息表(Teacher)。 四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表(一)~表(四)所示。用SQL语句创建四个表并完成相关题目。 表1-1数据库的表结构 表(一)Student 含义 属性名数据类型可否为 空 Sno Char(3) 否学号(主键) Sname Char(8) 否学生姓名 Ssex Char(2) 否学生性别 Sbirthday datetime 可学生出生年 月 Class Char(5) 可学生所在班 级 表(二)Course 含义 属性名数据类型可否为 空 Cno Char(5) 否课程号(主 键) Cname Varchar(10) 否课程名称 Tno Char(3) 否教师编号(外 键) 表(三)Score 含义 属性名数据类型可否为 空 Sno Char(3) 否学号(外键) Cno Char(5) 否课程号(外 键) Degree Decimal(4,1) 可成绩

主码:Sno+ Cno 表(四)Teacher 含义 属性名数据类型可否为 空 Tno Char(3) 否教师编号(主 键)Tname Char(4) 否教师姓名Tsex Char(2) 否教师性别Tbirthday datetime 可教师出生年 月 Prof Char(6) 可职称Depart Varchar(10) 否教师所在部 门 表1-2数据库中的数据 表(一)Student Sno Sname Ssex Sbirthday class 108 曾华男1977-09-01 95033 105 匡明男1975-10-02 95031 107 王丽女1976-01-23 95033 101 李军男1976-02-20 95033 109 王芳女1975-02-10 95031 103 陆君男1974-06-03 95031 表(二)Course Cno Cname Tno 3-105 计算机导论825 3-245 操作系统804 6-166 数字电路856

学生选课与课程安排数据库设计

学号: 课程设计 课程名称数据库系统原理 学院计算机科学与技术 专业计算机科学与技术 班级计算机1007 姓名 指导教师

2013 年01 月23 日

课程设计任务书 学生:专业班级: 指导教师:工作单位: 题目:教学管理信息系统——学生选课及课程安排数据库设计 初始条件: 大学同时开设多门课程。每门课程有一个主讲教师,有多名学生选修;一个学生可选修多门课程并获得相应的学分和成绩;上课的基本单位是“次”(一次2学时),每一次课都规定了上课时间和教室(这一规定更灵活,并不象本校现在的情形!)。 要求完成的主要任务: 1.根据上述的初始条件,进行调查分析并设计适当的属性。设计一个学生选课 及课程安排数据库,记录教师和学生的基本信息,选课,课程安排等信息,DBMS可选Ms SQL Server、Oracle、MySQL等。 2.完成课程设计说明书,其格式遵守学校今年的新规定。主要容包括:需求分 析,概念设计,逻辑设计,物理实现等。 3.基于该数据库,最好实现一个或多个应用程序(自己确定功能),程序设计 语言(工具)任选。这一项是选作,不作硬性要求。 时间安排: 本学期第21周: 1.消化资料、系统调查1天 2.系统分析1天 3.总体设计,实施计划2天 4.撰写报告1天 指导教师签名:2013年月日 系主任(或责任教师)签名:2013年月日

目录 1.需求分析 (4) 1.1初始条件 (4) 1.2要求完成的任务 (4) 1.3可行性分析 (4) 1.4设计环境 (4) 1.5实现需求 (4) 2.概念设计 (5) 2.1数据库基本表设计 (5) 2.2 E_R图 (5) 3.逻辑设计 (6) 3.1关系模式 (6) 3.2子模式 (6) 4.物理设计 (6) 5.数据库设计源代码 (7) 5.1基本表SQL源语言 (7) 5.2基本表数据库实现 (10) 6.设计心得 (13) 7.参考资料 (13)

数据库设计学生选课系统

《数据库原理与应用》实验指导与报告 2010 / 2011 学年第 2 学期 姓名:季亚 学号: 班级: 09数媒(1)班 指导教师:周蓓 计算机科学与工程学院 2011

目录 实验八数据库设计.................................................... 一、概要设计 1.1目的和意义 1.2内容和要求 二、需求分析 2.1背景 2.2概要分析 2.3开发技术 2.4系统主要功能 三、E-R图 3.1 概念设计................................................. 3.2 E-R图................................................... 四、逻辑结构 4.1逻辑转换 4.2细化表结构 五、数据库实施 5.1创建表 5.2创建必要视图 5.3创建必要触发器 5.4创建必要存储过程 六、总结 参考文献.........................................................

实验八数据库设计 一、概要设计 1.1目的和意义 随着无纸化办公的普遍实现,信息的自动处理以及网络式的信息交互方式已经被人们广泛应用。让计算机来管理学生的信息是现在各个高校都在积极进行的工作之一,也是高校教学管理工作的重要内容之一。网上选课与传统的选课方式相比更加节约资源,增加了学生选课自主权。 学生选课系统作为一种现代化的教学技术,越来越受到人们的重视,是一个学校不可或缺的部分, 学生选课系统就是为了管理好选课信息而设计的。学生选课系统的将使选课管理工作规范化、系统化、程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够准确、及时、有效的查询和修改学生选课情况。 与传统的选课方式相比,网上选课系统利用局域网为学生选课带来了极大的便捷。学生在公共机房,或者宿舍的个人电脑上便可以通过校园网络来选课。在选课期间内,学生能够使用选课系统灵活的修改自己的选课情况,大大提高了学校选课工作的效率。教务处的教师则可以通过选课系统的管理员子系统来管理学生的选课情况,使得学生选课工作达到系统化和自动化,大大提高了学校的工作效率,为广大师生及相关人员节省了极多的时间。 数据库对于一个应用系统的意义是相当重要的,一个设计良好的数据库系统一方面,能够给开发者带来便捷,更轻松的进行系统设计与编码;另一方面,对于系统的后期维护也非常重要,一个良好的数据库系统能够保证系统的可扩充性,以及系统的移植性等问题。 1.2内容和要求 本实验将设计出一个高校网上选课数据库系统,其要求简要如下: (1)系统用户由三类组成:教师、学生和管理员。

学生选课系统

管理信息系统课程设计报告 学生选课系统 班级: 学号: 姓名: 指导教师: 2014年12月20日

目录第一章:现行系统概述 第二章:系统分析 2.1需求分析 2.2可行性研究 2.3信息系统规划 2.4系统的开发方法的选择 2.5组织结构与功能分析 2.6业务流程分析 2.7数据与数据流程分析 2.8功能/数据分析 2.9新系统逻辑方案的建立 第三章系统设计 3.1系统总体结构设计 3.2数据结构与数据库设计 3.3代码设计 3.4输入/输出设计 3.5模块功能与处理过程设计 第四章系统实施 4.1系统实施 4.2系统运行调试

第五章:结束语(结论、建议、收获、体会及小组中每个成员的工作内容) 参考文献

第一章现行系统概述 本科生选课系统是个很庞大的信息系统。目前随着学校人数和课程的激增,对教务处而言,管理和维护选课系统关系到自身的效率,选课系统的繁杂,在一定程度上会相对的增加教务处的管理负担。对学生而言,在选课阶段必须面对大量课程进行仔细筛选,而所有课程聚在一起,学生无法快速定位自己想选以及在规定时间内被要求选的课程类别。 这些问题的出现表明我们的选课系统仍然存在着问题,也需要对其进行改造,由此提高学生选课效率,为学生的学习带来更大的便利。学生选课系统作为一种现代化的教学技术,越来越受到人们重视,是一个学校不可或缺的部分。学生选课系统就是为了管理好选课信息而设计的。学生选课系统将是选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够准确,及时,有效的查询和修改学生选课情况。

第二章系统分析 2.1需求分析 学生可以选修规定范围内的课程,查看已修学分总数,还可以修改个人信息。教师可以根据统计的人数挑选一定数量的学生,也可以直接在网上公布成绩,让学生直接在网上查询成绩。管理员可以指定每门课程的任课教师,修改课程信息,增加、修改、删除学生信息。分析一:系统应该满足以下几个方面需求: (1)某些选修课程因为前序课程或者教学管理资源的限制,要求系统能对课程选修人数、选修学生年级、专业等进行限制。 (2)选课过程需具有时效性,系统要能在短时间内响应大量学生的查询和选课要求,並及时处理。 (3)教务部门能及时掌握课程选修情况,系统界面直观,操作简单,学生不需经任何培训即可操作。 (4)系统要提供数据输出接口以供教务员作后期处理及保存。包括作为以后查询和评估使用的资料。 分析二:系统要实现的功能分为二大模块: 管理员模块: (1)负责统一管理,包括课程的查询、添加、修改和删除; (2)限制选修条件的管理,包括条件的添加、修改和删除; (3)统一管理用户,包括管理员和学生用户的管理; (4)系统公告的管理; (5)数据的管理和数据导出;

高校学生选课系统数据库设计

数据库原理课程设计 ——高校学生选课系统 速提升。 本文是在对各大高校全校公开课学生选课情况进行实地调查后, 进行详细分析讨论后撰写的学生选课管理系统数据库设计报告。全文

从最初的系统规划,到需求分析、概念设计、逻辑设计、物理设计。 每一阶段都进行了详细的分析。接下来的实现、运行与维护阶段,还 进行了对本系统的测试,最后是本次项目开发的心得和体会以及本文 的参考文献。 本系统是采用 MVC 模式(jsp+javabean+servlet)进行的 J2EE 企业级开发,主要功能是对学生选课及相关信息进行管理。较行业同类 产品而言,本系统人机界面设计更加合理、人性化,用户操作简单方便。数据库的安全性更高,对用户访问权限进行了严格控制。数据存 取速度更快,使用年限更长。可以很好的满足高校公开课学生选课的 要求,极大的提高了学校的工作效率。 关键字:高校学生选课系统;Mysql;JSP 第一章系统开发可行性分析 分析系统的可行性,说明该软件开发项目的实现在技术上、经济上和操作上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施方案,说明并论证所选定实施方案的理由。 1.1技术可行性 技术可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满

足开发者的需要等。本课题是以jsp平台和Myeclipse作为开发工具,运用java 等语言进行开发,所使用的数据库是Mysql,数据库小巧、速度快,而且功能也十分完善,非常适合软件的开发。而且,平台降低开发和管理他们的数据基础设施的时间和成本,使得系统可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。综上所述,本系统所使用的技术完全可以满足该系统的开发。 1.2经济可行性 本课题开发所涉及的操作平台、开发工具基本上都是实验室机房已具备的软件,都是免费使用的,而且如今的市场情况是:其他都在涨价,就电子类产品在降价。而且我们可以免费参阅图书馆的书籍、期刊,免费下载相关文献资料,所以在经济上不存在很大的负担。 1.3操作可行性 由于本系统是以数据、图表作为人机交互载体的,在整个系统的使用过程中,需要用户输入相关信息,根据相应提示进行选择即可,操作简单,人机交互界面友好,系统具有较强的亲和性和易用性,用户只需要阅读用户手册,或者观看别人演示,即可熟练掌握本系统的使用。因此从操作可行性方面来说,本系统也是完全可行的。 第二章需求分析 2.1引言 为了规范、有条理的进行本系统的设计以及合理的满足使用者的需求,为使后续的开发维护工作变得可靠而轻松,编写本系统需求分析说明书,旨在开发过程中进行参考,使系统在需求的范围之内进行开发,避免重复劳动,加快开发进度以及提高开发效率,同时也是为以后系统维护服务提供指南。

学生选课管理系统

学生选课管理系统 SANY GROUP system office room 【SANYUA16H-SANYHUASANYUA8Q8-

#include #include #include #include #include //定义学生对象类型 typedef struct node { char Sno[10]; //学号 char Sname[10]; //姓名 char Ssex[3]; //性别 char Sage[3]; //年龄 char Sdept[4]; //所在系 struct node *next; }Student; //定义课程对象类型 typedef struct node2 { char Cno[10]; //课程号 char Cname[10]; //课程名 char Cpno[5]; //先行课 char Ccredit[3]; //学分 struct node2 *next; }Course; //定义选课对象类型 typedef struct node3 { char Sno[10]; char Cno[10]; int Grade; struct node3 *next; }SC; //初始化学生信息表

void InitlistA(Student *stu) { stu->next=NULL; } //初始化课程信息表 void InitlistB(Course *C) { C->next=NULL; } //初始化选课信息表 void InitlistC(SC *S) { S->next=NULL; } //求选课表的深度 int Getlength(SC *S) { int i=0; SC *p; p=S->next; while(p!=NULL) { p=p->next; i ; } return(i); } //用户输入数据建立学生信息表(尾插法) void CreatelistA(Student *stu) { Student *s,*r; int m,i;

学生选课数据库设计

北京理工大学珠海学院课程设计说明书 2011 — 2012 学年第 1 学期 题目: 学生选课数据库设计 学院:商学院 专业班级: 学号姓名: 指导教师: 成绩: 时间: 2011年 12 月 5 日

北京理工大学珠海学院 课程设计任务书 2011 ~2012 学年第1 学期 学生姓名:何景豪专业班级: 09信管一班指导教师:李玉敏工作部门:商学院一、课程设计题目 学生选课数据库设计 二、课程设计内容 、选课系统的设计 (1) 在选课数据库中,统计出选修课程超过4门以上的学生信息。 (2) 检索出成绩及格的、姓王的女同学信息。 (3) 统计出平均分在80分以上的学生的信息,并将结果按平均分升序排列。 (4)统计出至少有三名学生选修的课程的平均分,统计项包含课程编号和平均分。 (5)为每个实体表和关系表创建合适的索引(聚簇索引、复合索引)、主码、外码; (6)创建课程类别取值范围为管理类、电子类、计算机类、机械类的规则,并与相应的列绑定; (7)在选课联系中创建成绩默认值为60的默认,并与相应的列绑定; (8)创建一个可以通过课程类别和任课教师进行查询课程的存储过程; (9)通过触发器定义未选课的学生不能从学生实体中删除; (10)建立包括选课学生的学号,姓名,系别,所选课程号,课程名,和成绩的视图; 三、进度安排 1.需求分析(4学时) 2.概念模型(4学时)、逻辑模型及关系数据表(4学时) 2.建库及建表(4学时)、索引(4学时)、视图(4学时)、触发器(4学时)、存储过程(4学时)、事务(4学时)、输入初始数据(4学时),共40% 3.统计报表(两个及以上综合数据统计报表)(4学时)

学生选课管理系统需求规格说明书

学生选课系统需求规格说明书

目录 0. 文档介绍 (4) 0.1文档目的 (4) 0.2文档范围 (4) 0.3读者对象 (4) 0.4参考文档 (4) 1.产品介绍 (5) 2.产品面向的用户群体 (6) 3. 产品应当遵循的标准或规范 (7) 4.产品范围 (7) 5. 产品中的角色 (7) 6. 产品的功能性需求 (8) 6.0功能性需求分类 (8) 6.1后台管理功能需求 (8) 6.1.1管理员信息管理 (8) 6.1.2教师信息管理 (10) 6.1.3学生信息管理 (11) 6.1.4课程信息管理 (12) 6.1.5排课管理 (13) 6.1.6教室信息管理 (14) 6.2前台管理功能需求 (15) 6.2.1学生选课 (15) 6.2.2撰写教师反馈 (16) 6.2.3个人信息管理 (17) 6.2.4用户登录 (19) 7. 产品的非功能性需求 (20) 7.1用户界面需求 (20) 7.2软硬件环境需求 (20) 7.3产品质量需求 (20) 7.4其他需求 (21) 附录A:需求建模与分析报告 (22) A.1学生选课系统业务流程图 (22) A.1.1系统总体业务流程分析 (22) A.1.2学生管理业务流程图分析 (23)

A.1.3教师管理业务流程图分析 (24) A.1.4选课/退课子系统业务流程图分析 (25) A.1.5教师反馈子系统业务流程图分析 (26) A.1.6管理员管理业务流程图分析 (26) A.1.7管理员排课业务流程图: (27) A.1.8管理员退课业务流程图: (28) A.2学生选课管理系统数据流程图 (29) A.2.1顶层数据流程图 (30) A.2.2 O层数据流程图 (30) A.2.3后台管理数据流程图 (31) A2.4 前台管理数据流程图 (36) 附录B:需求确认....................................................................................... 错误!未定义书签。

学生选课大数据库设计

《数据库系统概论》学生选课数据库设计 实 验 报 告 系别: 专业: 班级: 学号: : 日期:201

第一章设计容与目标 ............................................................................ - 1 - 1.1设计容...................................................................................................- 1 - 1.2设计目标...............................................................................................- 1 - 第二章需求分析 .................................................................................... - 1 - 2.1需求背景...............................................................................................- 1 - 2.2选课分析...............................................................................................- 2 - 第三章概要设计 .................................................................................... - 2 - 3.1各属性E-R图 ......................................................................................- 2 - 3.2总E-R图..............................................................................................- 3 - 第四章逻辑设计及规化 ........................................................................ - 4 - 4.1 关系模型............................................................................................- 4 - 4.2关系数据表.........................................................................................- 4 - 第五章数据库对象设计 ........................................................................ - 6 - 5.1 SQL物理结构设计 ..............................................................................- 6 - 1.新建数据库..............................................................................................................................- 6 - 2.新建用户名和密码表..............................................................................................................- 6 - 3.新建学生表..............................................................................................................................- 6 - 4.新建教师表..............................................................................................................................- 7 - 5.新建课程表..............................................................................................................................- 7 - 6.新建选课表..............................................................................................................................- 8 - 7.新建讲授表..............................................................................................................................- 8 - 5.2主要查询功能sql语句 ........................................................................- 9 - 1 登陆管理.................................................................................................................................- 9 - 2 学生信息管理.........................................................................................................................- 9 - 3 课程管理.................................................................................................................................- 9 - 4 查询管理...............................................................................................................................- 10 - 5.3选课系统设计要求容........................................................................ - 10 - 第六章心得体会 ................................................................................ - 12 -

数据库学生选课系统完整版

数据库学生选课系统 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

数据库设计——学生选课系统 设计内容: 我们组设计的是学生选课管理系统,选课管理系统是学校教务系统中很庞大、很复杂的一个数据库系统,在这里我们将其简化,只选取了部分比较直观的关系模式。我们设计的系统涉及院系信息、学生信息、教师信息、课程信息、选课信息、还有成绩管理及查询。 设计目标: 所实现的功能有:能记录院系、学生、教师以及课程的基本情况,能记录学生所选的课程以及相应的成绩和授课教师。每个学生和老师都只能被一个院系管理,为了简化每个教师最多教授一门课程,每个学生可选多门课程或者不选,每个学生选修的每门课程有一个成绩记载,每个教师教授最多一门课程,学生在系统中可以有查询成绩的权限,管理员有修改成绩的权限。 需求分析 :需求背景 随着信息时代科技不断提高,学校规模不断扩大,教学质量不断提高,大学期间有许多公共选修课,以往的选修课方法是课堂报名或者纸上填写方式报名,这种方法虽然直接,但是造成选课的盲目性,而且学生选过课程后不好在更改查看,一方面浪费大量的人力,物力资源,另一方面浪费时间以及在认为统计过程中不可避免的出现差错的情况。这给广大的老师和学生带来诸多的不便,管理起来也相当困难。使用网上选课系统可以提前进行网上选课,并且选课以后学生还可以在查看和更改,随意选择各个老师的课程,老师管理起来也比较方便。鉴于它的重要性,这就迫切需要研制开发一款功能强大,操作简单,具有人性化的网上选课系统。 :选课分析 根据分析,本系统的实体有学生、教师、课程和选课信息。 描述学生的属性有:学号、院系、姓名、性别、出生日期、入学时间、专业、班级。 描述教师的属性有:教师编号、姓名、性别、职称、专业。 描述课程的属性有:课程编豪、课程名称、授课老师、课程类型、上课时间、上课地点、学时、学分。

学生选课管理系统(数据库课程设计)

数据库系统原理及其应用教程 课程设计报告 设计题目选修课程管理系统的设计与实现 指导教师

摘要 随着计算机技术的日新月异,极大的推动的各个行业的信息化进程。各大高校也急需进行信息化改革,以促进教学质量和工作效率快速提升。 本文是在对各大高校全校公开课学生选课情况进行实地调查后,进行详细分析讨论后撰写的学生选课管理系统数据库设计报告。全文从最初的系统规划,到需求分析、概念设计、逻辑设计、物理设计。每一阶段都进行了详细的分析。接下来的实现、运行与维护阶段,还

进行了对本系统的测试,最后是本次项目开发的心得和体会以及本文的参考文献。 本系统主要功能是对学生选课及相关信息进行管理。较行业同类产品而言,本系统人机界面设计更加合理、人性化,用户操作简单方便。数据库的安全性更高,对用户访问权限进行了严格控制。数据存取速度更快,使用年限更长。可以很好的满足高校公开课学生选课的要求,极大的提高了学校的工作效率。 关键字:学生选课管理系统;分析;设计 目录 一、概述 (4) 1.1 设计背景 (34) 1.2 设计目的 (36) 1.3 设计内容 (39) 二、需求分析 (19) 2.1 功能分析 (7) 2.2 工作流图 (6) 2.3 数据流图 (7)

2.4 数据字典 (16) 三、概念模型设计 (18) 3.1 实体之间的联系 (18) 3.2 E-R图 (19) 四、逻辑设计 (26) 4.1 概念模型向关系模型的转换 (26) 4.2 概念模型的优化 (27) 五、源代码及查询截图 (29) 5.1 数据库的存储结构 (29) 5.2 实现 (32) 5.3 人机界面设计 (34) 5.4 系统测试 (36) 5.5 运行维护 (39) 六、总结 (40) 参考文献 (41) 一、概述 1.1设计背景 可行性研究的目的是用最小的代价在尽可能的短的时间内确定数据库系统是否可能开发、是否值得开发、是否可以开发(在该报告中主要是考查《学生选课管理系统》是否可能开发、是否值得开发、是否可以开发)。其实质是在较高层次上以较抽象方式进行的、简化的压缩的需求分析和概要设计过程。

实验选课系统数据库设计

《数据库原理与应用》课程设计 题目:实验选课系统数据库设计系别: 专业(含班级): 学号: 姓名: 指导教师:职称 填表日期:年月日

一、选题依据和意义 实验选课系统作为教学过程中一个不可或缺的环节,是为了更好地管理实验选课信息而建立的。该系统可以让选课信息更加规范化、系统化、程序化,避免选课系统的随意性,提高信息处理的速度和准确性,能够及时、准确、高效的查询或修改实验选课信息。加上局域网的开放,更为学生选课带来很大的便捷,学生可通过校园网进行选课,增加选课的灵活性,提高了学校选课工作的效率,教务处的教师可以依据选课系统对选课信息进行合理的管理,为广大师生及相关工作人员节省了时间。 二、需求分析 1.需求调查与分析 随着信息技术的发展、局域网的应用和数据的逐渐增多,近年来,人们逐渐用网络信息管理系统代替人工对管理的信息。高校也逐渐用选课系统代替人工的选课已增加选课的系统化、规范化、灵活性,提高选课的效率和对选课信息的管理效率。 2.业务流程图: 从教师开课开始,经过教务处的审核之后,教务处结合实验室的相关信息整理出有效的课程提供给学生们进行选择。 图1:实验选课系统业务流程图 三、概念结构设计 概念结构设计的含义:将需求分析得到的用户需求抽象为信息结构即概念模型的过程。它是整个数据库设计的关键。 本设计由上面的实验选课系统业务流程图抽象(分类、聚集、概括)可得到实验选课系统的概念模型,用如下E-R图表示:

图2:实验选课系统E-R图 四、逻辑结构设计: 根据实验选课系统E-R图和以下转换规则可得选课系统的关系模式。 转换规则: 1、一个实体型转换为一个关系模式 2、实体型间的联系有以下几种: (1)1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并; (2)1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并; (3)m:n(3个或3个以上)联系转换为一个关系模式。与该联系相连的各实体的码及联系本身的属性均转换为关系的属性; (4)具有相同码的关系模式可合并。 1.实验选课系统关系模式: 如图2所示,按照上面的转换规则,可得实验选课系统的关系模式如下: (1)教师(教师号,姓名,密码,性别,年龄,系别,职称,电话); (2)课程(课程号,课程名,学时,学分,实验室编号); (3)学生(学号,姓名,密码,性别,年龄,系别,班级); (4)实验室(实验室编号,实验室名称,地点,电话); (5)开课(教师号,课程号,时间); (教师号,课程号)分开为外键 (6)选修(学号,课程号,成绩);(学号,课程号)分开为外键

学生选课管理系统(详细设计说明书)

1引言 (2) 1.1编写目的 (2) 1.2背景 (2) 1.3定义 (2) 1.4参考资料 (2) 2程序系统的结构 (3) 3程序1(标识符)设计说明 (7) 3.1程序描述 (7) 3.2功能 (8) 3.3性能 (8) 3.4输人项 (8) 3.5输出项 (9) 3.6算法 (9) 3.7流程逻辑 (9) 3.8接口 (10) 3.9存储分配 (11) 3.10注释设计 (11) 3.11限制条件 (11) 3.12测试计划 (11) 3.13尚未解决的问题 (11) 4程序2(标识符)设计说明....................................................................... 错误!未定义书签。

详细设计说明书 1引言 1.1编写目的 该详细设计说明书的目的在于根据需求说明书与概要设计说明书提出该系统的详细设计,即系统的详细架构,主要包括系统的模块划分、程序系统的结构、各个模块的流程以及各层次中每个程序的设计考虑。 1.2背景 软件系统名称:学生选课系统 软件实现计算机:方正科技 与其他系统和机构的相互管理:暂无。 1.3定义 图1 程序数据字典定义 1.4参考资料 1.《软件工程导论》(张海藩编著清华大学出版社2007年5月) 2.《数据库系统概论(第四版)》(王珊编著高等教育出版社2007年11月)

3.《Visualbasic程序设计》(吴定雪主编科学出版社) 2程序系统的结构 2.1 、管理员模块程序设计说明 ①人员管理:管理员在登录之后可以对系统内的人员(包括学生、教师等)进行管理, 包括对人员的信息进行查询、修改和删除等操作。 ②课程管理:管理员在后台添加、编辑课程的基本信息(包括授课教师、开课时间设定), 同时可以编辑系统开放选课的时间,在适当时间开启和关闭选课系统。 ③系统信息管理:管理员可对系统的基本信息进行编辑,对系统公告进行更改或者系统 标题、系统相关链接等。 ④系统权限管理:对不同的用户要分配不同的权限,管理员可设定不同人员对不同模块 的访问权限,允许或者拒绝不同用户对模块的增删查改操作。 图2.1管理员模块图 2.2、教师模块程序设计说明 (1)基本信息管理:此模块主要实现两个分支功能: ①个人信息修改和密码修改。在教师用户登录状态下,实现这些功能,通过对自己 的注册信息的修改满足用户的个性需求,能将注册信息及时反映个人状态,另外,密码修改则是很多网站都应具备的基本功能,能有效保护用户身份和网络安全。 ②其它基功能如学生查询,教师查询和留言查询,这三个功能都是在教师在线状态

学生选课管理系统

软件项目管理 学生选课管理系统 项目名称: 组长 组员 提交时间: 2015年6月15日

学生选课管理系统 项目任务书 一、目的、要求 通过软件开发的实践训练,进一步掌握软件项目管理的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。 具体如下: 1.学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象 的系统分析与设计,软件项目管理,编码和测试方面的知识; 2.熟悉自动化的软件开发工具Rational Rose 2003,并将其运用于软件 开发的全过程; 3.进一步加强和提高软件工程文档的编写能力; 4.培养协作能力和团队精神。 二、主要内容 1.课题题目:学生选课系统,本系统要实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;教师查看选课学生的信息,提交成绩; 管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课 程等。 2.运用面向对象技术、UML及可视化的建模工具完成系统的需求分析与设计。 3.使用Rational Rose作为需求分析与设计的建模工具,包括静态建模和

动态建模,并利用对象模型自动生成数据模型,自动建立数据库。 4.采用分层模式的应用设计模式进行系统的设计实现。 5.系统要实现四个模块功能:教师模块、学生模块、管理员模块和公用模块。 6.初步建立系统原型,实现关键的功能,并对系统进行测试。 三、任务分配

学生选课管理系统 任务分解书(WBS)一.学生选课管理系统任务分解 1.1.1 项目规划 1.1.2 计划评审 1.2 需求开发 1.2.1 用户界面设计 1.2.2 用户需求评审 1.2.3 修改需求、修改用户界面 1.2.4 需求规格说明书 1.2.5 编写需求获取方法 1.2.6 编写需求跟踪矩阵 1.3 设计 1.3.1 概要设计 1.3.2 详细设计

学生选课数据库SQL语句练习题(详细分解答案)

一、设有一数据库,包括四个表:学生表(Student)、课程表 (Course)、成绩表(Score)以及教师信息表(Teacher)。 四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表(一)~表(四)所示。用SQL语句创建四个表并完成相关题目。 表1-1数据库的表结构 表(一)Student 含义 属性名数据类型可否为 空 Sno Char(3)否学号(主 键) Sname Char(8)否学生姓名 Ssex Char(2)否学生性别 Sbirthday datetime可学生出生年 月 Class Char(5)可学生所在班 级 表(二)Course 含义 属性名数据类型可否为 空 Cno Char(5)否课程号(主 键) Cname Varchar(10)否课程名称 Tno Char(3)否教师编号 (外键) 表(三)Score 含义 属性名数据类型可否为 空 Sno Char(3)否学号(外 键) Cno Char(5)否课程号(外 键)

Degree Decimal(4,1)可成绩 主码:Sno+ Cno 表(四)Teacher 含义 属性名数据类型可否为 空 Tno Char(3)否教师编号 (主键)Tname Char(4)否教师姓名Tsex Char(2)否教师性别Tbirthday datetime可教师出生年 月 Prof Char(6)可职称Depart Varchar(10)否教师所在部 门 表1-2数据库中的数据 表(一)Student Sno Sname Ssex Sbirthday class 95033 108曾华男1977-09- 01 105匡明男1975-10- 95031 02 95033 107王丽女1976-01- 23 95033 101李军男1976-02- 20 109王芳女1975-02- 95031 10 95031 103陆君男1974-06- 03 表(二)Course

学生选课管理系统源代码

#include #include #include struct course { int num; char name[20]; char kind[20]; int ttime,mark,term; }c; struct student { int snum; int cnum; char cnam[20]; char snam[20]; }s[500]; int count;//全局变量 int main()//主函数 { int n; int menu(); int f1(); int luru(); int liulan(); int chaxun(); int xuanke(); int tongji(); printf("\n ********************** ***********************"); printf("\n\n ********** 欢迎进入学生选课系统!**********"); menu(); printf("\n"); printf(" ******************* the end *********************\n"); printf("\n ********************** ***********************"); printf("\n\n 请先选择1 进行课程信息录入:"); scanf("%d",&n);//防止错误,请重新输入 for(;n>5||n<0;) { printf("\n 输入错误!请重新输入!\n "); scanf("%d",&n); } while(n>0&&n<6) {

数据库学生选课系统分析与设计

北京理工大学珠海学院 课程设计任务书 2011 ~2012 学年第 1 学期 学生姓名: xxx 专业班级: 09信息管理与信息系统 指导教师: xxx 工作部门:商学院 一、课程设计题目 学生选课系统的数据库设计 选课系统的设计 1)统计出至少有三名学生选修的课程的平均分,统计项包含课程编号和平均分2)在选课数据库中,统计出选修课程超过或等于2门以上的学生信息 3)统计出平均分在90分以上的学生的信息,并将结果按平均分降序排列 ●为每个实体表和关系表创建合适的索引(聚簇索引、复合索引)、主码、外码; ●创建学院类别取值范围为商学院、外国语学院、计算机学院、信息科技学院, 并与相应的列绑定; ●通过触发器定义选课的成绩不能从选课中修改,修改专业的同时修改班级人 数,在学生表中删除学生的同时,删除选课表中的信息; ●创建视图studentview(学生信息表),sc_view(学生成绩表),cs_view(学 生课程表); ●存储过程exec Pro_基本信息功能的验证,存储过程exec Pro_班级信息的验证: (查询不同“班级编号”的所有学生信息) ●事务的创建(同时更新“姓名”和“所属班级”列信息,否则数据保持不变) I

摘要 随着社会的发展,学生的人数和课程的种类急速增加,传统的选课管理模式已经无法满足当前的实际需求,为此,我们开发了学生选课管理系统。 本人结合学生选课管理的实际需要,完成了对学生选课管理系统的需求分析、功能模块划分、数据库模式分析等,并由此设计了后台数据库以及前台应用程序。 文中首先对课题背景,数据库基础理论和SQL语言进行了简单的讨论;接着,学生选课管理系统进行了详细分析,划分了具体的功能模块;最后,给出了学生选课系统应用程序的设计过程,以及每个功能模块的核心代码。 系统可以实现学生选课的一些重要功能,如:课程的添加、删除,信息查询、选课、生成课表,以及学生选课管理人员、用户个人信息的维护等。 关键词管理系统;数据库;SQL Server 2000 II

相关文档
最新文档