1、学生信息管理系统数据库设计报告科技职业学院 信息工程系SQL Server实训报告书 项目名称: 学生信息管理系统 数据库构建与设计 姓 名: X X X 班 级: XX级计算机应用 一班 指导教师: X X 完成时间: 200X.X.X-200X.X.X 项目概述 1一、学生信息管理系统数据库设计 21、项目介绍 21.1 数据需求分析 21.2 概念结构设计 21.3 逻辑结构设计 41.4 数据库物理设计 61.5 数据库实施 6二、学生信息管理系统数据库实施步骤 71、项目实践 71.1 数据库的创建 71.2 表对象的创建 71.3 索引对象的创建 91.4 视图对象的创建 91.5
2、 登录用户的创建 101.6 数据库用户的创建 10三、学生信息管理系统数据库管理 101、案例实践 101.1 案例试验数据 101.2 表数据的编辑 111.3 表数据的简单查询 121.4 表数据的联接查询 12四、项目总结 12五、 参考文献 12实训项目题目项目概述学生信息管理系统数据库的构建与设计简介项目名称 学生信息管理系统 数据库的构建与设计时间安排1周表数量 六个项目难度项目简介 高校学生的管理工作是高校的最基本工作之一。学生工作管理的水平是一个大学的综合管理能力的一项重要指标。如何进一步提高我校学生管理的科学性、及时性和准确性是一个十分重要的问题。随着学校招生人数的不断增加
3、,学生管理工作变得也日益繁重,大量的学生信息需要各级管理人员进行维护和统计,更增加了管理人员工作的负担。在这种形势下,学生管理信息化显得更为迫切和必要。系统通过校园网完成学生的日常管理工作,提高学生管理的水平,可以完成如下的工作。通过校园网的学生工作办公自动化系统,包括各系学生注册、各系学生日常管理、各系完成学生处和团委的工作上报和总结等,主管领导、学生处查询系统,查询、统计相关资料,工作指令安排落实系统,学生辅导员培训等等。学生工作管理系统的建成将大大提高我院学生管理工作的水平,使管理工作的精确性、即时性、决策的科学性、数据的准确性等得到很大的提高。学生信息管理系统就是一个学校对学生的各项信
4、息的关管理,通过这个系统,学校可以统计新生入学的一般信息,还可以对毕业生的信息进行学籍的统计和查看为获取证书的,对学生的专业及各专业之间学生调整的学籍变动,还可以统计学生在校期间的奖罚信息,等等.项目目的了解管理信息应用系统的数据库设计的基本方法,掌握数据库设计的基本流程。设计主要技术数据库的分析与设计、Transact-SQL编程环境SQL Server 2000项目特点通过本次课程设计,了解并掌握数据库设计过程中各个阶段的工作过程和工作容。技术重点使用标准的数据库设计方法实现数据库的分析与设计。技术难点数据库中各种不同类型信息关系的系统化和规化的实现。实训项目题目一、学生信息管理系统数据库
5、设计1、项目介绍学生信息管理系统的功能是收集学生的个人信息,以便向老师提供每个学生在校或毕业生学籍的情况,还可以让学生用自己的学号去查看自己在校期间的表现。学生信息管理系统的主要功能有:(1)、新生入学的学籍注册;(2)、学生在各专业间的流动情况;(3)、学生在校期间的奖惩情况;(4)、学生个人信息的查询和修改;(5)、毕业生的学籍注销和毕业证的颁发情况;学生信息管理系统主要提供学生管理:包括编辑(、性别、生日、照片等),用户登录(2种权限,一种是管理员可以做任何操作,一种是普通用户只可以查看,不能编辑,也不能查看用户信息),查询学生信息,统计学生人数。提供业务员管理:包括编辑:、所推荐学生等
6、,统计业务员业绩:就是所推荐的学生人数及具体情况,按、所推荐学生来查询业务员。1.1 数据需求分析学生信息管理系统就是对学生信息的管理,所以首先我们需要知道的是学生有那些信息,并且是怎样进行分类的。学生的信息包含1:基本信息;2:课程及成绩;3课程表。基本信息根据要求应该包括学生的基本情况、获得奖励情况、受到处分情况、学生的家庭信息等;课程及成绩应该包含对应课程对应学生的成绩;课程表包含课程号及其先导课。学生唯一一一对应的是学号,所以学号是唯一的主键,其他的都不能是,根据学号我们可以查找学生的信息,还有学生的上过课的课程成绩等有关信息;根据学号,可以知道学生的各科成绩查询。综合分析对信息管理系
7、统分四个表:学生基本信息(学号, ,性别,出生日期,学生所在系,班号 ,入校成绩,入学时间,父亲,母亲,获得奖励情况,受到处分情况),学生成绩表(学号,课程号,成绩),课程表(课程号,课程名,教师,先导课程)。1.2 概念结构设计实体间的联系:1:学生个人信息表stunents:学号s_number、s_name、性别sex、出生日期birthday、籍贯native、所在院系编号dep_number、所在班级 class_number、tel、联系地址address、邮编zipcode、电子email、相片photo、个人信息备注note2:学籍变更信息表schoolregister:记录号
8、t_number、学号s_number、变更情况change、记录对象t_object、记录时间t_time、详细描述t_memo3:学生奖励记录表reward:记录号r_number、学号s_number、级别r_rank、奖励对象r_object 、记录时间r_time 、详细描述r_memo4:学生处罚记录表 punish:记录号p_number、学号s_number、级别p_rank、处罚对象p_object、记录时间p_time、详细描述p_memo、是否生效effect5:班级信息表 class:班级编号c_number、班级名称c_name、所属院系dep_number6:院系信
9、息表department:院系编号dep_number、院系名称dep_name7:E-R图:1.3 逻辑结构设计1.学生个人信息表stunents(学号s_number、s_name、性别sex、出生日期birthday、籍贯native、所在院系编号dep_number、所在班级 c_number、tel、联系地址address、邮编zipcode、电子email、相片photo、个人信息备注note)字段名字段类型长度主键或外键字段值约束对应中文属性名s_numberchar10主键不为空学号s_namechar8不为空sexchar2不为空性别birthdaydatetime8不为空出
10、生日期nativechar20不为空籍贯c_numberchar10外键不为空所在班级编号dep_numberchar10外键不为空所在院系编号telchar20addressvarchar50联系地址zipcodechar8邮编emailvarchar20电子photoimage16相片notevarchar100个人信息备注2. 学籍变更信息表schoolregister(记录号t_number、学号s_number、变更情况change、记录对象t_object、记录时间t_time、详细描述t_memo)字段名字段类型长度主键或外键字段值约束对应中文属性名t_numberint4主键不
11、为空记录号s_numberchar10外键不为空学号changechar20变更情况t_objectchar20不为空记录对象t_timedatetime8不为空记录时间t_memovarchar100详细描述3. 学生奖励记录表reward(记录号r_number、学号s_number、级别r_rank、奖励对象r_object 、记录时间r_time 、详细描述r_memo)字段名字段类型长度主键或外键字段值约束对应中文属性名r_numberint4主键不为空记录号s_numberchar6外键不为空学号r_rankchar5级别r_objectchar20不为空奖励对象r_timedat
12、etime8不为空记录时间r_memovarchar100详细描述4. 学生处罚记录表punish(记录号p_number、学号s_number、级别p_rank、处罚对象p_object、记录时间p_time、详细描述p_memo、是否生效effect)字段名字段类型长度主键或外键字段值约束对应中文属性名p_numberint4主键不为空记录号s_numberchar6外键不为空学号p_rankchar2级别p_objectchar20不为空处罚对象p_timedatetime8不为空记录时间p_memovarchar100详细描述effectchar2不为空是否生效5. 班级信息表clas
13、s(班级编号c_number、班级名称c_name、所属院系dep_number)字段名字段类型长度主键或外键字段值约束对应中文属性名c_numberchar10主键不为空班级编号c_namechar20不为空班级名称dep_numberchar10外键不为空所属院系6. 院系信息表department( 院系编号dep_number、院系名称dep_name)字段名字段类型长度主键或外键字段值约束对应中文属性名dep_numberchar10主键不为空院系编号dep_namechar20不为空院系名称7. 数据表之间的逻辑关系图: 1 N 1 1 N N 1 N N N1.4 数据库物理设计
14、物理结构设计是为逻辑数据模型建立一个完整的能实现的数据库结构,包括存储结构和存取方法。输入:系统关系数据结构输出:系统数据库物理结构1.物理结构设计的主要容:2.物理存储介质类型的选择为了提高系统的安全性,防止系统因介质的损坏而导致数据丢失的危险,学生信息管理系统最好采用基于Windows 2000 RAID-5卷实现的RAID-5级的磁盘阵列,因此需要四块物理磁盘。3.数据库物理位置的选择学生信息管理系统数据库的数据文件安排如下:一个主数据文件,存放在C:Teachdatateachdat1.mdf下;两个次数据文件,分别存放在D:Teachdatateachdat2.mdf和E:Teach
15、datateachdat3.mdf下;日志文件,存放在F:Teachdatateachlog.ldf下。应用系统可以对四块磁盘进行并行访问,从而提高对磁盘数据的读写效率。4.索引类型的选择教学信息管理系统的核心任务是对学生的学籍信息和考试信息进行有效的管理。其中,数据量最大且访问频率较高的是学生选课信息表。为了提高系统的查询效率,降低系统的查询成本,需要为学生信息表和学生选课信息表建立聚簇索引。5.数据库服务器性能参数配置数据库服务器的存配置参数、I/O配置参数和操作系统性能配置参数使用系统安装时缺省参数。1.5 数据库实施数据库实施是根据应用系统数据库的关系结构模型和物理结构设计结果,形成基
16、于SQL Server平台应用系统数据库的脚本和数据库设计报告,并进行数据库的具体构建与管理。输入:系统关系数据结构系统数据库物理结构输出:系统数据库脚本系统数据库设计报告数据库定义脚本数据库表定义脚本数据库索引定义脚本二、学生信息管理系统数据库实施步骤1、项目实践1.1 数据库的创建查询分析器:CREATE DATABASE studentON PRIMARY(NAME=student_data, FILENAME=H:SQLDataBasestudent.mdf, SIZE=10, MAXSIZE=50, FILEGROWTH=5%) LOG ON(NAME=student_log, FI
17、LENAME=H:SQLDataBasestudent.ldf, SIZE=1, MAXSIZE=5, FILEGROWTH=1)结果显示窗格:CREATE DATABASE 进程正在磁盘 student_data 上分配 10.00 MB 的空间。CREATE DATABASE 进程正在磁盘 student_log 上分配 1.00 MB 的空间。1.2 表对象的创建1.学生个人信息表stunents的创建:USE studentGOCREATE TABLE students(s_number char(10) NOT NULL PRIMARY KEY, -学号 s_name char(8)
18、 NOT NULL, - sex char(2) NOT NULL, -性别 birthday datetime NOT NULL, -出生日期 native char(20) NOT NULL, -籍贯 c_number char(10) NOT NULL, -所在班级编号 dep_number char(10) NOT NULL, -所在院系编号 tel char(20), - address varchar(50), -联系地址 zipcode char(8), -邮编 email varchar(20), -电子 photo image, -相片 note varchar(100) -
19、个人信息备注)2.学籍变更信息表schoolregisterUSE studentGOCREATE TABLE schoolregister(t_number int NOT NULL PRIMARY KEY, -记录号 s_number char(10) NOT NULL, -学号 change char(20), -变更情况 t_object char(20) NOT NULL, -记录对象 t_time datetime NOT NULL, -记录时间 t_memo char(100) NOT NULL, -详细描述)3.创建学生奖励记录表rewardUSE studentGOCREAT
20、E TABLE reward(r_number int NOT NULL PRIMARY KEY, -记录号 s_number char(10) NOT NULL, -学号 r_rank char(5), -级别 r_object char(20) NOT NULL, -奖励对象 r_time datetime NOT NULL, -记录时间 r_memo char(100) NOT NULL, -详细描述)4.创建学生处罚记录表punishUSE studentGOCREATE TABLE punish(p_number int NOT NULL PRIMARY KEY, -记录号 s_nu
21、mber char(10) NOT NULL, -学号 p_rank char(5), -级别 p_object char(20) NOT NULL, -处罚对象 p_time datetime NOT NULL, -记录时间 p_memo char(100) NOT NULL, -详细描述 effect char(2) NOT NULL -是否生效)5.创建班级信息表classUSE studentGOCREATE TABLE class(c_number char(10) NOT NULL PRIMARY KEY, -班级编号 c_name char(10) NOT NULL, -班级名称
22、 dep_number char(10) NOT NULL -所属院系编号)6.创建院系信息表departmentUSE studentGOCREATE TABLE department(dep_number char(10) NOT NULL PRIMARY KEY, -院系编号 dep_name char(10) NOT NULL, -院系名称)1.3 索引对象的创建创建索引i_stu_number:USE studentGOCREATE UNIQUE CLUSTERED INDEX i_stu_numberON students(s_number)WITH PAD_INDEX, FILL
23、FACTOR=40, IGNORE_DUP_KEY, STATISTICS_NORECOMPUTE1.4 视图对象的创建创建视图v_students:USE studentGOCREATE VIEW v_studentsAS SELECT department.dep_number AS 学院代码,department.dep_name AS 学院名称, class.c_number AS 教室编号,class.c_name AS 教室名称, s_number AS 学号,s_name AS FROM department,class,students WHERE department.dep
24、_number=students.dep_number AND class.c_number=students.s_number1.5 登录用户的创建创建SQL Server登录账号:Exec sp_addlogin Admin ,admin1.6 数据库用户的创建创建SQL Server数据库用户:Exec sp_grantdbaccess Admin,myDB三、学生信息管理系统数据库管理1、案例实践1.1 案例试验数据1.2 表数据的编辑1数据的插入USE studentGOINSERT INTO students(s_number,s_name,sex,birthday,native,
25、c_number,dep_number,tel,address,zipcode)VALUES(20071006,王美,女,1985-6-19,101,01001,省市,271602)2.数据的修改USE studentGOUPDATE studentsSET c_number=101,dep_number=01001WHERE s_number=200710043.数据的删除USE studentGODELETE FROM students WHERE s_number=200710061.3 表数据的简单查询USE studentGOSELECT dep_number AS 学院代码,c_n
26、umber AS 教室编号,s_number AS 学号,s_name AS FROM students1.4 表数据的联接查询USE studentGOSELECT department.dep_number AS 学院代码,dep_name AS 学院名称, class.c_number AS 教室编号,c_name AS 教室名称, s_number AS 学号,s_name AS FROM department,class,students四、项目总结通过这次的SQL Server课程设计,我们不仅系统的复习了SQL的指令用法,还深入了解了SQL数据库的功能,对Transact-SQL命令熟练运用,让我更加加深了它的语句思想!让我从这次课程设计中获得了好多知识,例如从网上得到的书上未出现过的或老师未讲到的一些关于SQL Server的语句!获益匪浅!5、参考文献1.SQL Server2000实用教程2.JAVA与数据库的连接3.数据库的原理与设计4. 网上搜查
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1