数据库课程设计实验报告[骄阳教育]_第1页
数据库课程设计实验报告[骄阳教育]_第2页
数据库课程设计实验报告[骄阳教育]_第3页
免费预览已结束,剩余43页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 课程设计评分细则 序号评 分 内 容分值得 分1选题新颖、结构完整、原创性强,语言规范、排版美观、装订规范。202需求分析工作深入详细,业务流程图、数据流程图、数据字典等需求文档完整,正确性高403概念结构设计合理, CDM的属性及其数据类型与数据字典一致,且正确性高204转换的PDM正确性高,相应的SQL脚本正确,参考文献完整10 5提交了数据库等相关文件,且电子文档与打印稿一致106附加成绩:系统功能实现的完整性、界面的美观性、操作的灵活方便性。20 7迟到、早退、打游戏或做无关之事,发现一次扣10分;旷课一次扣30分负分最终成绩评阅教师签名数据库原理及应用课程设计报告题目:计算机学院选

2、课管理系统 学号: 10903060137 姓名 朱子奇 2011年6月数据库课程设计实验报告系统名称:计算机学院选课管理系统课程名称:数据库课程设计课程设计时间:为期五天(2011.6.20-2011.6.24)课程设计内容:一 开发背景 1.1 背景 1.2 目的二 功能描述 2.1 系统目的与要求 2.2 系统可行性分析三 业务流程分析四 数据流程分析 4.1 数据流程图4.2 数据字典4.3 E-R图五 概念模型设计六 物理模型设计与优化七 课程设计心得体会八 参考文献一 开发背景1.1 背景:大学的课程按大类来说一般分为必修课和选修课。必修一般指学校或院系规定学生必须修习某课程,学校

3、对必修课程一般有统一的要求和安排。选修是指根据学生个人兴趣或专业需要自由选择修习某课程。简言之,必修就是必须修读,选修就是选择性修读。一般来说,基础性的知识都作为必修课程。有些知识不是基础性的,与兴趣和研究方向有关,这部分知识可以选择。这是大学与中学最大的不同之处。90年代中期,由于Internet 的迅速普及,使Intranet成为Internet技术在企业管理信息系统中的应用和延伸,形成了集计算机,计算机网络、数据库、分布式计算等于一体的信息技术综合体,它打破了时间和地域的界限,使信息交流变得快捷、准确,为建立现代高校管理信息系统提供了充足的条件,用计算机数据库系统的形式来管理选课成为了既

4、方便又快捷的一种方式。因此开发选课管理系统是十分有前景的工作。1.2 目的:利用计算机支持学校高效率完成选课操作,是适应现代管理要求、推动企业劳动型治理走向科学化、规范化的必要条件;而选课管理是一项琐碎、复杂而又十分细致的工作,学生的基本资料,所开设的课程条目,选课资料的保存,选课条件的约束,一般不允许出错,假如实行手工操作,须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,而计算机选课操作,不仅能够保证各项信息准确无误、快速输出,同时计算机具有手工治理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学校管理的效率,也是

5、学校的科学化、正规化管理,与时代接轨的重要条件。开发本系统就是为了解决高校在选课操作管理中的一些不规范,使选课信息的治理向着规范化、简单化、有效化的方向发展。二 功能描述2.1 系统目标与要求:建立一个选修课管理系统,统一管理学生、课程以及选课信息,以便快速地提供选课操作。该系统应具有以下功能目标: 1 学生进行选课操作。已经登记在系统数据库中的学生,可以进行课程信息的查看。一旦学生找到所欲的课程,就可以提出选课申请。系统会审核并记录学生的选课信息。对于每位学生的每次选课操作,系统会生成一条选课信息并将其写入选课信息库中。2 学生进行选课信息查询操作。完成选课的学生,可以进行选课信息的查询和确

6、认。每位学生都可以在任何时间查询选课信息,以进行学生选课后遗忘了所选的课程是什么时的补救。3 学生对不满意的选课进行更改操作。当学生对所选课程不满意时,可以向系统提供选课更改的请求。系统根据学生的请求,允许学生进行选课的更改操作。2.2 系统可行性分析:系统现阶段的发展过程中,利用现有人力和物力是完全具备能力开发出来的,作为阶段性产品,日后的发展空间大,实现方法简单容易。本系统开发采用PowerDesigner和SQL SERVER相结合的方法来实现。要求所有数据信息的储存都由数据库来完成,而这些数据的建模则由PowerDesigner完成。系统采用数据库进行信息管理模式,与手工管理相比,既能

7、够降低对人工劳动的要求,又能大大减少管理成本,而且在结构上也具有很大的灵活性,在安全上也可以得到充分地保证。所以本系统在技术上是完全可以实现的。目前,在高校选课是必须的操作,许多都要求通过数据库进行管理,并且实际中也有系统的使用。所以本系统的使用前景非常的广阔,易于推广和普及到现实中应用。所以本系统在实际应用上是完全可行的。三 业务流程分析业务流程图:选课查询and更改四 数据流程分析4.1 数据流程图选课查询and更改4.2 数据字典数据流的描述:数据流编号:D1.1数据流名称:登录信息申请简述:学生输入用户名密码请求登录数据流来源:学生数据流去向:系统登录数据流组成:系统编号 学生学号 登

8、录密码数据流编号:D1.2数据流名称:登录信息简述:学生信息库反馈学生信息数据流来源:学生信息库数据流去向:登录系统数据流组成:学生姓名 学生性别 学生年龄 学生院系数据流编号:D1.3数据流名称:课程信息申请简述:学生查看可选课信息数据流来源:登录系统数据流去向:查看所欲课程数据流组成:学生编号数据流编号:D1.4数据流名称:课程信息简述:课程信息库反馈课程信息数据流来源:课程信息库数据流去向:查看所欲课程数据流组成:课程编号 课程名称 课程学分 课程课时数据流编号:D1.5数据流名称:选课申请单简述:学生根据所欲课程提交申请单数据流来源:查看所欲课程数据流去向:执行选课操作数据流组成:学生

9、编号 课程编号数据流编号:D1.6数据流名称:选课完成通知单简述:审核并完成选课操作数据流来源:执行选课操作数据流去向:记录选课信息数据流组成:学生编号 课程编号 系统编号数据流编号:D1.7数据流名称:选课信息更新单简述:向选课信息库更新选课记录数据流来源:记录选课信息数据流去向:选课信息库数据流组成:学生编号 课程编号 系统编号数据流编号:D2.1数据流名称:登录信息申请简述:学生输入用户名密码请求登录数据流来源:学生数据流去向:系统登录数据流组成:系统编号 学生学号 登录密码数据流编号:D2.2数据流名称:登录信息简述:学生信息库反馈学生信息数据流来源:学生信息库数据流去向:登录系统数据

10、流组成:学生姓名 学生性别 学生年龄 学生院系数据流编号:D2.3数据流名称:选课信息申请简述:学生查选课信息数据流来源:登录系统数据流去向:查看已选课信息数据流组成:学生编号数据流编号:D2.4数据流名称:选课信息简述:选课信息库反馈选课信息数据流来源:选课信息库数据流去向:查看已选课信息数据流组成:学生姓名 课程名称 课程学分 课程课时数据流编号:D2.5数据流名称:更改申请单简述:学生根据欲更改课程提交申请单数据流来源:查看已选课信息数据流去向:执行更改操作数据流组成:学生编号 课程编号数据流编号:D2.6数据流名称:更改完成通知单简述:审核并完成更改操作数据流来源:执行更改操作数据流去

11、向:更改选课信息数据流组成:学生编号 课程编号 系统编号数据流编号:D2.7数据流名称:选课信息更新单简述:向选课信息库更新选课记录数据流来源:更改选课信息数据流去向:选课信息库数据流组成:学生编号 课程编号 系统编号处理逻辑的描述:处理逻辑编号:P1.1处理逻辑名称: 登录系统简述:审核学生身份使学生进入系统输入的数据流:登录信息申请 登录信息处理描述:接受学生的登录信息申请,处理并请求学生信息库反馈学生信息,将反馈的信息返回给学生,使学生登录输出的数据流:课程信息申请处理逻辑编号:P1.2处理逻辑名称: 查看所欲课程简述:向学生展示可选课程输入的数据流:课程信息申请 课程信息处理描述:通过

12、学生的学号进行筛选,要求课程数据库反馈课程信息,将反馈信息返回给学生,使其看到可选课程输出的数据流:选课申请单处理逻辑编号:P1.3处理逻辑名称: 执行选课操作简述:对选课信息进行审核并生成数据库记录输入的数据流:选课申请单处理描述:根据学生的选课申请单进行审核并生成数据库记录输出的数据流:选课完成通知单处理逻辑编号:P1.4处理逻辑名称: 记录选课信息简述:将选课确认信息导入数据库输入的数据流:选课完成通知单处理描述:将数据库记录更新选课数据库输出的数据流:选课信息更新单处理逻辑编号:P2.1处理逻辑名称: 登录系统简述:学生输入用户名密码请求登录输入的数据流:登录信息申请 登录信息处理描述

13、:接受学生的登录信息申请,处理并请求学生信息库反馈学生信息,将反馈的信息返回给学生,使学生登录输出的数据流:课程信息申请处理逻辑编号:P2.2处理逻辑名称: 查看已选课程信息简述:浏览已选过的选课记录输入的数据流:选课信息申请单处理描述:对已经进行过选课的用户现实起选课记录输出的数据流:更改申请单处理逻辑编号:P2.3处理逻辑名称: 执行更改操作简述:对选课信息进行审核,并生成数据库记录输入的数据流:更改申请单处理描述:学生提出改申请,系统进行信息审核并生成数据库记录输出的数据流:更改完成通知单处理逻辑编号:P2.4处理逻辑名称: 更改选课信息简述:将产生的数据库记录用于更新选课数据库输入的数

14、据流:更改完成通知单处理描述:准备将已经生成的数据库记录用于更新之前的选课信息库,已完成选课的更改操作输出的数据流:选课信息更新单数据存储的描述:数据存储编号:F1.1数据存储名称: 学生信息库简述: 存储学生基本的信息数据存储组成:学生编号 学生姓名 学生性别 学生年龄 学生院系关键字: 学生编号 学生姓名相关联的处理:P1.1数据存储编号:F1.2数据存储名称: 课程信息库简述: 存储所有课程信息数据存储组成: 课程编号 课程名称 课程学分 课程课时关键字: 课程编号 课程名称相关联的处理:P1.2数据存储编号:F1.3数据存储名称: 选课信息库简述: 存储学生的选课信息数据存储组成: 学

15、生编号 学生姓名 课程编号 课程名称 课程学分 课程课时 系统编号关键字: 学生编号 课程编号相关联的处理:P1.4数据存储编号:F2.1数据存储名称: 学生信息库简述: 存储学生基本信息数据存储组成: 学生编号 学生姓名 学生性别 学生年龄 学生院系关键字: 学生编号 学生姓名相关联的处理:P2.1数据存储编号:F2.2数据存储名称: 选课信息库简述:存储学生的选课信息数据存储组成: 学生编号 学生姓名 课程编号 课程名称 课程学分 课程课时 系统编号关键字:学生编号 课程编号相关联的处理:P2.2 P2.4外部实体的描述:外部实体编号:S1.1外部实体名称:学生(选课)简述:从选课系统中选

16、课的人输入的数据流:无输出的数据流:登陆信息申请外部实体编号:S2.1外部实体名称:学生(查询and更改)简述:从选课系统中查询and更改的人输入的数据流:无输出的数据流:登陆信息申请4.3 E-R图五 概念模型设计六 物理模型设计与优化SQL脚本/*=*/* DBMS name: Sybase SQL Anywhere 11 */* Created on: 2011/6/24 1:13:38 */*=*/if exists(select 1 from sys.sysforeignkey where role=FK_学生_管理_系统) then alter table 学生 delete fo

17、reign key FK_学生_管理_系统end if;if exists(select 1 from sys.sysforeignkey where role=FK_更改单_处理(更改单)_系统) then alter table 更改单 delete foreign key FK_更改单_处理(更改单)_系统end if;if exists(select 1 from sys.sysforeignkey where role=FK_查询单_处理(查询单)_系统) then alter table 查询单 delete foreign key FK_查询单_处理(查询单)_系统end if;

18、if exists(select 1 from sys.sysforeignkey where role=FK_选修_选修_课程) then alter table 选修 delete foreign key FK_选修_选修_课程end if;if exists(select 1 from sys.sysforeignkey where role=FK_选修_选修2_学生) then alter table 选修 delete foreign key FK_选修_选修2_学生end if;if exists(select 1 from sys.sysforeignkey where role

19、=FK_选课单_处理(选课单)_系统) then alter table 选课单 delete foreign key FK_选课单_处理(选课单)_系统end if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id and i.index_name=管理_FK and t.table_name=学生) then drop index 学生.管理_FKend if;if exists( select 1 from sys.sysindex i, sys.systable t w

20、here i.table_id=t.table_id and i.index_name=学生_PK and t.table_name=学生) then drop index 学生.学生_PKend if;if exists( select 1 from sys.systable where table_name=学生 and table_type in (BASE, GBL TEMP) then drop table 学生end if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table

21、_id and i.index_name=处理(更改单)_FK and t.table_name=更改单) then drop index 更改单.处理(更改单)_FKend if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id and i.index_name=更改单_PK and t.table_name=更改单) then drop index 更改单.更改单_PKend if;if exists( select 1 from sys.systable where ta

22、ble_name=更改单 and table_type in (BASE, GBL TEMP) then drop table 更改单end if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id and i.index_name=处理(查询单)_FK and t.table_name=查询单) then drop index 查询单.处理(查询单)_FKend if;if exists( select 1 from sys.sysindex i, sys.systable t

23、 where i.table_id=t.table_id and i.index_name=查询单_PK and t.table_name=查询单) then drop index 查询单.查询单_PKend if;if exists( select 1 from sys.systable where table_name=查询单 and table_type in (BASE, GBL TEMP) then drop table 查询单end if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id

24、=t.table_id and i.index_name=系统_PK and t.table_name=系统) then drop index 系统.系统_PKend if;if exists( select 1 from sys.systable where table_name=系统 and table_type in (BASE, GBL TEMP) then drop table 系统end if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id and i.index

25、_name=课程_PK and t.table_name=课程) then drop index 课程.课程_PKend if;if exists( select 1 from sys.systable where table_name=课程 and table_type in (BASE, GBL TEMP) then drop table 课程end if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id and i.index_name=选修2_FK and t.tabl

26、e_name=选修) then drop index 选修.选修2_FKend if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id and i.index_name=选修_FK and t.table_name=选修) then drop index 选修.选修_FKend if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id and i.index_na

27、me=选修_PK and t.table_name=选修) then drop index 选修.选修_PKend if;if exists( select 1 from sys.systable where table_name=选修 and table_type in (BASE, GBL TEMP) then drop table 选修end if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id and i.index_name=处理(选课单)_FK and t.tab

28、le_name=选课单) then drop index 选课单.处理(选课单)_FKend if;if exists( select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id and i.index_name=选课单_PK and t.table_name=选课单) then drop index 选课单.选课单_PKend if;if exists( select 1 from sys.systable where table_name=选课单 and table_type in (BASE, GBL

29、 TEMP) then drop table 选课单end if;/*=*/* Table: 学生 */*=*/create table 学生 ( 学号 char(10) not null, 编号(系统) char(10) not null, 姓名 char(10) not null, 年龄 char(10) not null, 性别 char(10) not null, 院系 char(10) not null, constraint PK_学生 primary key (学号);/*=*/* Index: 学生_PK */*=*/create unique index 学生_PK on 学

30、生 (学号 ASC);/*=*/* Index: 管理_FK */*=*/create index 管理_FK on 学生 (编号(系统) ASC);/*=*/* Table: 更改单 */*=*/create table 更改单 ( 单据编号(更改单) char(10) not null, 编号(系统) char(10) null, 系统编号(更改单) char(10) not null, 课程编号(更改单) char(10) not null, 学号(更改单) char(10) not null, 日期(更改单) timestamp not null, constraint PK_更改单

31、primary key (单据编号(更改单));/*=*/* Index: 更改单_PK */*=*/create unique index 更改单_PK on 更改单 (单据编号(更改单) ASC);/*=*/* Index: 处理(更改单)_FK */*=*/create index 处理(更改单)_FK on 更改单 (编号(系统) ASC);/*=*/* Table: 查询单 */*=*/create table 查询单 ( 单据编号(查询单) char(10) not null, 编号(系统) char(10) null, 系统编号(查询单) char(10) not null, 课

32、程编号(查询单) char(10) not null, 学号(查询单) char(10) not null, 日期(查询单) timestamp not null, constraint PK_查询单 primary key (单据编号(查询单));/*=*/* Index: 查询单_PK */*=*/create unique index 查询单_PK on 查询单 (单据编号(查询单) ASC);/*=*/* Index: 处理(查询单)_FK */*=*/create index 处理(查询单)_FK on 查询单 (编号(系统) ASC);/*=*/* Table: 系统 */*=*/

33、create table 系统 ( 编号(系统) char(10) not null, 名称(系统) char(10) not null, constraint PK_系统 primary key (编号(系统));/*=*/* Index: 系统_PK */*=*/create unique index 系统_PK on 系统 (编号(系统) ASC);/*=*/* Table: 课程 */*=*/create table 课程 ( 编号(课程) char(10) not null, 名称(课程) char(10) not null, 学分 char(10) not null, 课时 cha

34、r(10) not null, constraint PK_课程 primary key (编号(课程));/*=*/* Index: 课程_PK */*=*/create unique index 课程_PK on 课程 (编号(课程) ASC);/*=*/* Table: 选修 */*=*/create table 选修 ( 编号(课程) char(10) not null, 学号 char(10) not null, constraint PK_选修 primary key clustered (编号(课程), 学号);/*=*/* Index: 选修_PK */*=*/create u

35、nique clustered index 选修_PK on 选修 (编号(课程) ASC,学号 ASC);/*=*/* Index: 选修_FK */*=*/create index 选修_FK on 选修 (编号(课程) ASC);/*=*/* Index: 选修2_FK */*=*/create index 选修2_FK on 选修 (学号 ASC);/*=*/* Table: 选课单 */*=*/create table 选课单 ( 单据编号(选课单) char(10) not null, 编号(系统) char(10) null, 系统编号(选课单) char(10) not null, 课程编号(选课单) char(10) not null, 学号(选课单) char(10) not null, 日期(选课单) timestamp not null, constraint PK_选课单 primary key (单据编号(选课单));/*=*/* Index: 选课单_PK */*=*/create unique index 选课单_PK on 选课单 (单据编号(选课单) ASC);/*=*/* Index: 处理(选课单)_FK */*=*/create index 处理(选课单)_FK on

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论