数据库成绩管理系统课程设计mysql_数据库学生成绩管理系统课程设计报告

41528d3028836879cd698677c3999917.gif数据库学生成绩管理系统课程设计报告

数据库课程设计报告1.功能需求 本报告主要介绍学生成绩管理系统的数据库设计,从需求分析到数据库的运行与维护都 进行详细的叙述。该系统是利用 SQL 开发出来的。通过 SQL 建立学生成绩管理系统,大大 方便和简化了数据的查询和处理,管理员可以通过 SQL 语言对表内数据进行添加,删除, 修改,查询等操作,还可以建立多用户,对其使用权限进行分配和回收。 报告分为 4部分,第一部分是课题简介及设计的内容与目的,需求分析,此阶段是数据 库设计的起点。第二部分是概念设计,逻辑结构设计,它是将需求分析的用户需求抽象为信 息结构,并将概念模型转换为某个 DBMS 所支持的数据模型。第三部分是数据库的实施与 运行,它包括数据的载入及数据困的运行和数据库和数据表的创建(代码) 。第四部分是课 程设计的总结。 1.1开发环境及开发语言 本次课程设计是以学生信息管理系统为模拟模型,运用 C++编程语言结合 SQL 数据库 所开发系统。开发平台为 VC6.0 和 SQL2008。 1.2 设计目的 随着学生数量的日益增多,学校对学生的管理要求也越来越高,为了使学生成绩的管理 更加系统化,数字化,因此我们设计了该学生信息管理系统。 1.3 设计内容 运用基于 E-R 模型的数据库设计方法和关系规范化理论做指导完成从系统的分析到设计 直至系统的最终实现,开发学生成绩管理系统,完成学生成绩管理系统的全部功能。首先做 好需求分析,并完成数据流图,其次做概念分析,利用实体联系的方法将需求分析的用户需 求抽象为信息结构,得到 E-R 图,然后就是逻辑结构设计,将 E-R 图转换为计算机系统所 支持的逻辑模型。最后利用 SQL 完成具体的实例。 1.4.需求分析 1、 问题的提出:为了高效率的完成学生成绩的管理,决定开发学生成绩管理系统。 2、 需完成的功能: (1) 能提供管理员及普通用户(除删除和修改)录入、注销、显示当前用户、修改、删 除、查询、输出,学生的档案信息,这些信息包括学生的成绩、课程、个人信息等。 (2) 触发器,索引,存储过程的建立及使用。 2. 概念设计 (1)(E-R图) Studen t Sname Sex Birthday Tel Sno Address Grade Score Politica Culture Cource Sno Cno Test User UserNm UserPw UserTyp (2)物理结构设计 Student Column Name Date Type Width 空值情况 Sno nchar 10 主关键字 Sname nchar 10 不为空 Sex nchar 10 不为空 Birthday numeric 10 可为空 Address nchar 10 可为空 Grade nchar 10 不为空 Po;itic nchar 10 不为空 Cuture nchar 10 不为空 Tel Nchar 10 不为空Cource Column Name Date Type Width 空值情况 Sno nchar 10 主关键字 Cno nchar 10 不为空 Score nchar 10 可为空 User Column Name Date Type Width 空值情况 User_name nchar 20 主关键字 User_Pswd nchar 20 不为空 User_Type int 可为空 (3)分析关系模式 对于关系模式 Student(Sno|Sname|Sex|Age|Address|Grade|class|Tel|Politic|Cuture )假定姓名 也具有唯一性,那么 Student 就有两个码,这两个码都由单个属性组成,彼此不相交。其它属性不存在对码的传递依赖与 部分依赖,又因为 Student 中除学号、姓名外没有其它的因素,所以 Student 属于 BCNF。对 于关系模式Cource(|Sno|Cno|Score|)有两个码,这两个码都由单个属性组成,彼此不相交, 其它属性不存在对码的传递依赖与部分依赖,又因为成绩中除学号、课程号外没有其它的决 定因素,所以成绩属于 BCNF。对于关系模式User(|UserName|UserType|UserPswd|)中, 它只有一个码,这里没有任何属性对课程号部分依赖或传递依赖,同时用户名是唯一的决定 因素,所以课程属于 BCNF。它和学生信息和成绩没有直接的联系,因此它是一张单独的表。 3.SQL 语句 3.1 创建表 学生表 create table Student ( Sno nchar(10) primary key,Sname nchar(10) not nullSex nchar(10) not null Age numeric(10) Address nchar(10)Class nchar(10) not null Grade nchar(10) not null Tel nchar(10) not null Politic nchar(10) not null Cuture nchar(10) not null ) 成绩表 create table Exam ( Sno nchar(10) primary key //主键约束Cno nchar(10) Not nullScore nchar(10) foreign key (Cno) references Course //外键约束 check(Score>=0) //完整性约束 ) 用户表 create table Teacher ( Username nchar(10) not nullUserPswd nchar(10) not nullUserType nchar(10) not null ) 3.2数据初始化 将学生类别加入表 Student 中 insert into Student values ( 000’,’张明’,’M’,’’,’哈尔滨’,’计科一班’,’大一’,’15880000’, ’无’,’群众’) insert into Student values( 001’,’李三’,’M’,’’,’长春’,’计科二班’,’大三’ ’15233000’.’无’, ’群众’) insert into Student values( 002’,’王强’,’M’,’’,’哈尔滨’,’软件二班’,’大二’ ’15850040’.’无’, ’群众’) insert into Student values( 003’,’张雪’,’F’,’’,’哈尔滨’,’软件一班’,’大一’ ’156809802’.’无’, ’群众’) insert into Student values( 004’,’李力’,’M’,’’,’大连’,’软件一班’,’大三’ ’15980000’.’无’, ’群众’)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:深蓝海洋 设计师:CSDN官方博客 返回首页
评论

打赏作者

私募分析猿

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值