数据库课程设计学院学生管理信息系统
精品文档---下载后可任意编辑 2024 2024 学年第 二 学期 课程设计说明书 题 目学院学生管理信息系统 2024 年 7 月 2 日 摘要 本文简要介绍了用SQL创建学院学生管理信息系统数据库的过程。针对每年新生入校和毕业生离校的情况,为了及时掌握在院学生情况,特建立此数据库。为了提高编程能力,建库者采纳编写代码的形式实现创建过程。 创建全程分为系统需求分析、数据库系统概念设计、数据库系统逻辑结构设计、数据库系统实施等阶段。本文围绕创建过程展开。经过对学院学生管理信息系统需求的分析,建库者进行了数据库概念结构设计,绘制E-R图。按转换的原则,将概念模型转换为关系模型,并根据实际情况给实体各属性给予恰当的数据类型和长度,实现数据库的逻辑结构设计。运用代码创建“学院学生管理信息系统”数据库,college、class、team、dorm、student五个基本表,并通过外键建立好表间联系。为每个表创建好存储过程后,利用存储过程对表中数据进行添加、修改、删除、等操作。因student表数据量大,所以为其建立索引。在假设某种查看数据需求的情况下,建立条件查询、多表查询。因为本系统针对学生管理,为使输入简化,特对student表中“性别”属性建立默认值,并进行检测。为维护系统正常运行,减低数据丢失的几率,建库者为系统指定了作业计划及备份。为方便用户查询数据及保证数据库数据的安全性,定义了用户和权限并设置不同的使用权限。本系统基本能反映学生信息,可作为SQL入门实例。 关键词SQL SQL建库实例 SQL代码 数据库 数据库设计 概念结构 逻辑结构 视图 索引 查询 默认 备份 用户 角色 第一章 系统概述 本次课程设计我建立的数据库是学院学生管理信息系统。该系统是一个综合的管理信息系统。围绕学生,系统涵盖了学生隶属的班级概况,班级所属的学院信息,学生所参加运动队的概况及学生住宿状况等。该系统的设计能够满足对学院、班级、学生、运动队、宿舍等信息的查询以及修改。该系统性能的完好性将影响学生信息管理。 第二章 系统需求分析 一个学院根据专业及需要开设多个班级,一个班级只能隶属于一个学院,所以学院与班级是1n的关系。学院属性有学院编号、学院名称;班级属性包括班级号、班级名、专业、教室。 每一个班级有多名学生,每名学生必须且只能属于一个班级,则班级与学生对应的关系为1n。设学生属性有学号、姓名、性别、年龄。 每一个学院有若干运动队,一个运动队只能效力于一个学院,故学院与运动队的关系为1n。参加运动队的同学在运动队里有参加项目。运动队属性有运动队号、队名、教练员、活动地点、活动时间。 一个宿舍可以有多名学生,但是一个学生只能住在一个宿舍里,宿舍属性有宿舍号、楼号、人数、管理员。 第三章 数据库系统概念设计 本系统首先自顶向下进行需求分析,再自底向上设计概念结构,先定义各局部应用的概念结构,然后按一定的规则将他们集合起来得到全局概念。 根据以上系统需求分析,绘制ER图如下 学院 运动队 班级 学生 学院编号 学院名称 拥有 隶属 包括 参加 住宿 活动时间 活动地点 队号 队名 教练员 宿舍 学号 年龄 性别 姓名 教室 专业 班级名 人数 楼号 宿舍号 管理员 1 n 1 n 1 1 n n 1 n 参加项目 班级号 图3-1 学院学生信息管理系统E-R图 第四章 数据库系统逻辑结构设计 按转换原则将图3-1的学院学生管理信息系统E-R视图转化成拥有主键(下有下划线)和外键(下有波浪线)的关系模型。 学院(学院编号,学院名称) 班级(班级号,班级名,专业,教室,学院编号) 运动队(队号,队名,教练员,活动时间,活动地点,学院编号) 宿舍(宿舍号,楼号,人数,管理员) 学生(学号,姓名,性别,年龄,班级号,队号,宿舍号,参加项目) 第五章 表结构设计 表5-1学院表(College)表结构 列名 说明 数据类型 数据长度 约束 college_num 学院编号 char 5 主键 College_name 学院名称 char 20 非空 表5-2班级表(class)表结构 列名 说明 数据类型 数据长度 约束 Class_num 班级号 Char 5 主键 Class_name 班级名称 char 20 非空 major 专业 Char 20 classroom 教室 Char 8 College_num 学院编号 char 5 外键,引用College表的college_num 表5-3运动队表(team)表结构 列名 说明 数据类型 数据长度 约束 Team_num 队号 char 5 主键 Team_name 队名 char 8 非空 Coach 教练 char 8 Place 活动地点 char 10 Sporttime 活动时间 datetime College_num 学院编号 char 5 外键,引用College表 的college_num 表5-4宿舍表(Course)表结构 列名 说明 数据类型 数据长度 约束 dorm_num 宿舍号 char 3 主键 Building_num 楼号 char 4 Total_member 人数 char 2 adm 管理员 char 80 表5-5学生表(student)表结构 列名 说明 数据类型 数据长度 约束 Stu_num 学号 char 10 主键 stu_name 姓名 char 8 非空 gender 性别 char 2 默认“男”,限“男”或“女” Age 年龄 smallint 默认为21 Class_num 班级号 5 非空,外键,引用class表 Class-num Team_num 队号 char 5 外键,引用team表team_num Dorm_num 宿舍号 char 3 外键,引用dorm表dorm_num pro 参加项目 char 10 第六章 创建数据库和表 6.1数据库的创建 使用查询分析器建库,代码如下 create database 学院学生管理信息系统 直接在“对象资源管理器”的“数据库”上右击选择“新建数据库”建库。本文采纳第二种方法。 6.2表的创建 调用查询分析器,用代码创建表,编写代码过程如图5-1,代码如下 create table collegecollege_num char5 primary key, college_name char20 not null; create table cla