数据库设计排课表管理系统.doc_第1页
数据库设计排课表管理系统.doc_第2页
数据库设计排课表管理系统.doc_第3页
数据库设计排课表管理系统.doc_第4页
数据库设计排课表管理系统.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

数据库原理与应用课程设计排课表管理系统班级:计算机12-2学号:12041216姓名:周行一管理系统的主要功能表或功能图功能序号功能名称功能说明1学生管理登记学生名单,并提供查询2教师管理登记教师基本情况名单,并提供查询3课程管理登记课程基本情况,并提供管理4教室管理统计教室基本情况,并提供分配功能5授课管理统筹教师讲授课程,并提供查询7选课管理登记学生选课信息,并提供查询8教室安排为课程安排教室,并提供视图9时间分配合理安排教师及学生时间,并提供查询二画出管理系统顶层的数据流图和某一子模块的数据流图管理人员教师意见状态信息编码信息教学计划教师信息教师信息课程信息学生信息编码编码教师信息教师信息0教学计划学生信息学生信息教师教师意见排课系统课程信息课程信息教学计划教学计划教室信息教学计划教室信息学生授课地点总表排布条件管理人员教师授课地点5.2授课地点及时间状态授课地点排布授课地点学生教室功能课程用具教学计划课程信息教室信息班级号名称三根据概念结构设计的结果画E-R图占用性质时间号所在班级授课教师选课课程年龄性别学号1姓名m学生学时名称m课程号所需功能n11课节m1占用11教室容纳人数教室号性别姓名教师号四数据库设计包括:数据库名称、数据文件、日期文件的设置。数据库名称:课程安排表。状态:正常所有者:delldell1创建时间:2014/11/26大小:12MB可用空间:8.42MB用户数:4五数据表设计包括:数据表结构设计、录入的原始数据。说明:(1)数据库中包含的数据表的个数及名称。数据表个数:12数据表名称: 班级表; 教师表; 学生表; 课程表; 教室表; 教师授课表; 教师意见表; 时间表; 教师时间状态表; 学生时间状态表; 教室时间状态表; 学生选课表;视图个数:2视图名称: 公共任选课; 教室安排表;(2) 数据表结构设计需填写下表。班级表字段名称数据类型是否允许空值约束说明CIdnchar(5)主键班级号CNamenchar(10)班级名CNumberint班级人数教师表字段名称数据类型是否允许空值约束说明TIdnchar(10)主键教师号TNamenchar(20)教师姓名TSexnchar(5)CHECK性别DIdnchar(3)所属学院Titlenchar(10)职称学生表字段名称数据类型是否允许空值约束说明SIdnchar(8)主键学号SNamenchar(20)学生姓名SSexnchar(5)CHECK性别SAgeint年龄SCIdnchar(4)外码班级号课程表字段名称数据类型是否允许空值约束说明CoIdnchar(7)主键课程号CoNamenchar(20)唯一键课程名称LTimeint默认值学时Functionnchar(2)教学用具教室表字段名称数据类型是否允许空值约束说明CRIdnchar(7)主键教室号ADnumberint教师授课表字段名称数据类型是否允许空值约束说明TIdnchar(10)主键,外键教师号CoIdnchar(7)主键,外键课程号LTimeint学时教师意见表字段名称数据类型是否允许空值约束说明TIdnchar(10)主键,外键教师号think1nchar(100)意见1Think2nchar(100意见2时间表字段名称数据类型是否允许空值约束说明TimeIdchar(2)主键时间号TimeNamechar(10)时间代称教师时间状态表字段名称数据类型是否允许空值约束说明TIdnchar(10)主键,外键教师号TimeIdchar(2)主键,外键时间号Statenchar(1)默认值状态学生时间状态表字段名称数据类型是否允许空值约束说明SIdnchar(8)主键,外键学号TimeIdchar(2)主键,外键时间号Statenchar(1)默认值状态教室时间状态表字段名称数据类型是否允许空值约束说明CRIdnchar(7)主键,外键教室号TimeIdchar(2)主键,外键时间号Statenchar(1)默认值状态学生选课表字段名称数据类型是否允许空值约束说明SIdnchar(8)主键,外键学号CoIdnchar(7)主键,外键课程号CCoNamenchar(20)课程名称CTNamenchar(20)授课老师CLTimeint课时(3)数据表记录需用图说明。班级表教师表学生表课程表教室表教师授课表教师意见表时间表教师时间状态表学生时间状态表教室时间状态表学生选课表六数据库功能设计要求:可以使用自定义函数、存储过程(含游标)。说明:每个自定义函数、存储过程要求包含:名称、功能、入口参数、源代码、结果(用图说明)。编码说明: 学号采用8位字符串表示。例:12 04 1 2 16从左到右分别表示入学时间,学院,系,班级,随机数(按报道先后)。(可扩展) 教室号采用7位字符串表示。例:02 04 08 1从左到右分别表示所在教学楼,所在楼层,随机数(从1递增),功能。 功能序号:1 空教室;2 办公室;3 计算机实验室;4 土木实验室;5 食品实验室;6 多媒体教室,7 仓库。(可扩展,可缩减) 课程号采用7位字符串表示。例:0 02 4 0 1 1从左到右分别表示课程性质,所属学院,系别,班级,是否任选(专业),随机数。 课程性质:0 公共课;1 专业课; 2 自然任选课;3 人文任选课;4 艺体任选课; 例:1041206 表示C语言课程,为工学院计算机系二班专业课。 1041012 表示计算机维护课程,为工学院计算机系专业任选课; 时间编号采用4位字符串表示。例:01 1 1分别表示星期总数,星期几,第几节。 班级号采用4位字符串表示。例: 04 1 2 从左到右分别表示学院,系,随机数。(可扩展)。添加存储过程(以学生为例)功能:添加学生入口参数:学号,学生姓名,性别,年龄,班级源代码:create procedure 添加学生 SId nchar(8),SName nchar(20),SSex nchar(5),SAge int,SCId nchar(4)asbegininsert into 学生表(SId,SName,SSex,SAge,SCId)values(SId,SName ,SSex ,SAge ,SCId)End建立公共任选课视图功能:建立公共任选课视图入口参数:无create view 公共任选课asselect *from 课程表where CoId like 2_% or CoId like 3_% or CoId like 4_%注释:2,3,4开头课程分别为自然任选课;人文任选课;艺体任选课;只显示任选课!建立教室安排表视图功能:建立教室安排表视图入口参数:无create view 教室安排表asselect CoId,CoName,CRIdfrom 课程表 a,教室表 bwhere a.Function=SUBSTRING(b.CRId,5,1) and b.ADnumber=dbo.选某门课人数(a.CoId)注释:a.Function=SUBSTRING(b.CRId,5,1)表示课程所需功能与教室功能匹配; b.ADnumber=dbo.选某门课人数(a.CoId)表示教室容纳人数大于等于选某门课人数; dbo.选某门课人数(a.CoId)选某门课人数自定义函数。游标教师号修改教师信息功能:依据教师号修改教师信息入口参数:已知教师号,修改的姓名,性别,学院号,职称源代码:create procedure 游标教师号修改教师 TId nchar(10),TName nchar(20),TSex nchar(5),DId nchar(3),Title nchar(10)asbegindeclare TId1 nchar(10)declare 游标 cursor for select TId from 教师表open 游标fetch next from 游标 into TId1 while FETCH_STATUS=0beginif TId1=TIdbeginselect 原记录,TId,TName,TSex ,DId ,Title from 教师表 where TId=TIdupdate 教师表set TName=TName, TSex=TSex ,DId=DId, Title=Titlewhere Current of 游标select 已改记录,TId,TName,TSex ,DId ,Title from 教师表 where TId=TIdbreakendfetch next from 游标 into TId1 endclose 游标deallocate 游标end结果:生成课程表功能:以学生为单位,生成课程表入口参数:学生学号源代码:create procedure 生成课程表 SId nchar(8)asbegindeclare CoId nchar(7)declare TId nchar(10)declare CRId nchar(7)declare TimeId char(2)declare 教室状态 nchar(1)declare 教师状态 nchar(1)declare 学生状态 nchar(1)declare x int -用于判断循环是否是FETCH_STATUS=0循环完全结束declare y int -用于判断是教师状态影响,还是学生状态影响set x=2declare 游标 cursor for select CCoId from 学生选课表 where CSId=SIdopen 游标fetch next from 游标 into CoIdwhile FETCH_STATUS=0beginselect TId=TId from 教师授课表 where CoId=CoId if CoId = 0011000 begin declare 游标 cursor for select TimeId from 时间表 where TimeName=公共高数 declare 游标 cursor for select CRId from 教室安排表 where CoId=CoId end else begin if CoId like005100_ begin declare 游标 cursor for select TimeId from 时间表 where TimeName=公共英语 declare 游标 cursor for select CRId from 教室安排表 where CoId=CoId end else begin if CoId like 1_1_ begin declare 游标 cursor for select TimeId from 时间表 where TimeName=专业任选 declare 游标 cursor for select CRId from 教室安排表 where CoId=CoId end else begin if CoId like 2% or CoId like 3% or CoId like 4% begin declare 游标 cursor for select TimeId from 时间表 where TimeName=公共选修 declare 游标 cursor for select CRId from 教室安排表 where CoId=CoId end else begin if CoId like 1_0_ begin declare 游标 cursor for select TimeId from 时间表 where TimeName like 专业课_ declare 游标 cursor for select CRId from 教室安排表 where CoId=CoId end else begin declare 游标 cursor for select TimeId from 时间表 declare 游标 cursor for select CRId from 教室安排表 where CoId=CoId end end end end end -依据课程性质粗略选择课程时间同时定义查询教室游标 open 游标 fetch next from 游标 into TimeId while FETCH_STATUS=0 begin select 教师状态=State from 教师时间状态表 where TimeId=TimeId and TId=TId select 学生状态=State from 学生时间状态表 where TimeId=TimeId and SId=SId if 学生状态=0 begin if 教师状态=0 begin open 游标 -利用游标找合适的教室 fetch next from 游标 into CRId while FETCH_STATUS=0 begin select 教室状态=State from 教室时间状态表 where TimeId=TimeId and CRId=CRId if 教室状态=0 begin select SId 学号,TimeId 时间号,CoId 课程号,TId 教师号,CRId 教室号 -显示课程表 update 教室时间状态表 set State=1 where CRId=CRId and TimeId in(select TimeId from 时间表 where TimeName in (select TimeName from 时间表 where TimeId=TimeId ) -将教室状态置. update 教师时间状态表 set State=1 where TId=TId and TimeId in(select TimeId from 时间表 where TimeName in (select TimeName from 时间表 where TimeId=TimeId ) -将教师状态置. update 学生时间状态表 set State=1 where SId=SId and TimeId in(select TimeId from 时间表 where TimeName in (select TimeName from 时间表 wher

温馨提示

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

评论

0/150

提交评论