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

下载本文档

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

文档简介

数据库系统概论院 系 信息学院 专 业 计算机工程与信息技术 班 级 信技一班 122131001 任课教师 秦惠林 学 号 1221310017 姓 名 王沾 数据库设计 相关要求与示例第一部分 相关要求1、选定实验题目如:图书管理系统、实验室物资管理系统、学生选课管理系统、学生学籍管理系统、学生公寓管理系统,机房管理系统等,同学们也可以提出自己的课题名,但必须得到任课老师的同意。2、撰写设计报告第二部分 数据库设计报告模板学生选课管理信息系统一、 需求分析(一) 系统目标实现学生选课信息管理系统。为任课教师和学生提供方便快捷的选课环境。(二) 需求分析 步入大学,要求每一个学生全面发展,除了要专业课和公共基础课等必修课外,学生还需要选择自己喜欢的选修课。学生选课管理系统面向广大学生和教师,着眼于选修课的管理,既可以让学生快速的了解所选的课程,还可以及时将信息反馈给任课教师。达到了方便快捷,易于管理的效果。通过学生选课管理信息系统,既可以全面的查询、插入、浏览、修改学生信息,还对学生选课做了记录,便于教师查询和统计本门课的相关信息。其次通过学生选课信息管系统,学生还可以清晰的了解所有的选修课程,根据自己的兴趣爱好进行选择。无论对学生来说还是对老师来说,学生选课信息管理系统的建立都是必须的。(三)功能划分登录进入主界面。超级用户有学生信息管理、课程信息管理、选课信息管理、教师信息管理以及修改口令和退出系统的权利。普通用户(主要为学生和教师)可以实现选课、课程信息查询等功能。(四)功能描述本系统面向学生和教师主要提供以下功能:1、 学生相关信息管理通过学生选课信息管理,我们可以插入、修改、删除、更新以及统计和浏览相关学生信息。2、 课程相关信息管理同样通过本系统,我们也可以实现相关课程的更新、添加、修改、删除等操作。3、 选课相关信息管理通过本系统,任课教师可以对选择本门课的相关信息进行查询、删除、修改等操作。学生也可以通过相关信息的查询了解自己所选课的相关记录,并进行选课。4、 教师信息管理通过本系统,教师可以登录查询、修改自己的相关信息等。5、 口令修改用户通过输入一次原口令和一次新口令可以修改口令。6、 退出系统用户退出系统时,系统会自动提示选课情况,然后进行确认后退出系统。二、 概念结构设计(一) 详细介绍1、实体集 (1)、学生实体集:具有学号、姓名、系别等属性。 (2)、教师实体集:具有教师编号、姓名、职称等属性。 (3)、课程实体集:具有课程号、课程名、学分等属性。2、联系 (1)、一个学生可以选择多门课程,一门课程也可以被多名学生选修,他们之间存在m:n的联系。 (2)、一个教师可以开设多门课程,一门课程也可以有多名教师教授,他们之间也存在m:n的联系。人数上限课程教师学生选修授课学号年龄性别系别课程号姓名课程名学分职称编号性别年龄行政班号授课时间限选学分已选学分姓名(二)、ER图三、 逻辑结构设计将E-R图转换为数据模型:(一)、将学生实体集转换为关系S(Sname,Sex,Sbirth,Sno,Sdept,Smaxcredit,Scredit)Sname代表学生姓名,Sex代表学生性别,Sbirth代表学生年龄,Sno代表学生学号,Sdept代表系别,Smaxcredit代表学分限制,Scredit代表已选学分。(二)、将课程实体转换为关系C(Credit,Cname,Cno)Credit代表学分,Cname代表课程名,Cno代表课程号。(三)、将教师实体转化为关系T(Tno,TPro,Tbirth,Tname,Tsex)Tno代表教师编号,Tpro代表教师职称,Tname代表教师姓名。(四)、将学生与课程之间的联系转化为关系SC(Sno,Cno)各属性的含义同上解释。(五)、将教师和课程之间的联系授课转化为关系Class(Clno,Cltime,Clnum,Cno,Tno)Clno代表行政班号,Cltime代表上课时间,Clnum代表人数限制,其他属性含义同上。四、 数据库物理结构设计(一)、将关系模式转化为表结构1、学生表域名含义数据类型例子备注Sno学号char1221310017主码Sname姓名char王强Sex性别char男Sbirth年龄smallint20Sdept系名char信息学院Smaxcredit限选学分smallint30Scredit已选学分smallint22、课程表域名含义数据类型例子备注Cno课程号charB34主码Cname课程名char大学物理Credit学分samllint43、教师表域名含义数据类型例子备注Tno教师编号charA001主码Tpro职称char教授Tbirth年龄int45Tname教师姓名char刘强Tsex性别Char男4、选课表域名含义数据类型例子备注Sno学号char1221310017外码Cno课程号charB34外码5、授课表域名含义数据类型例子备注Cno课程号charB34外码Tno教师编号charA001外码Clno行政班号Char122131001Cltime上课时间Char2-1Clnum人数限制Int30注:上课时间由两个数字和一条横线组成,前面的数字代表星期几,后面的数字代表第几节课。(二)、数据安全性控制1、用户登录通过用户标示和鉴别(即口令)实现系统最外层安全保护。本系统规定系统管理员的权限为1,普通用户的权限为0,用户名即为学生的学号和教师编号,初始密码默认为123456,普通户可以在初次登录时进行口令修改。2、权限授予因为任课教师要对学生选课记录进行浏览和查询。故系统管理员可以把查询权限授予所需要查询的教师用户语句如: GRANT SELECT ON TABLE SC TO U1;其它权限可根据具体需求由系统管理员来授予。3、数据完整性为了保证数据的正确性和相容性,即为了维护数据库的完整性,必须制定一定的完整性约束条件来对数据进行语义约束。可以通过各种约束,缺省值,规则和触发器实现数据的完整性(1) 通过Primary key来实现实体完整性,即主码约束。这里注意多个属性码要定义表级约束条件。(2) 通过定义外码约束来实现参照完整性,保证数据不能随意被删除。(3) Check约束,保证学生的已选学分必须要小于学分上限,并且规定性别的取值范围仅限于男女。其次还定义主码属性非空等。五、 数据库实施(一)、建立数据库CREATE DATABASE StudentON(NAME=学生选课管理库,FILENAME=E:db学生选课管理库.mdf,SIZE= 3,MAXSIZE= 50,FILEGROWTH= 1)(二)、建表(附带完整性约束条件)1、学生表Create table S(Sno char(9) not null, Sname char(8) not null,Sex char(2) check(Sex IN (男,女),Sbirth smallint,Sdept char(20),Smaxcredit smallint not null,Scredit smallint,Primary key (Sno),Check (Scredit=Smaxcredit);2、教师表Create table T(Tno char(9) primary key, Tname char(8) not null, Tpro char(8), Tbirth smallint,Tsex char(2) check(Sex IN (男,女),);3、课程表Create table C(Cno char(9) primary key, Cname char(8) not null,Credit int not null);4、选课表Create table SC(Cno char(9) not null, Sno char(9) not null,Primary key (Sno,Cno),Foreign key (Sno) references S(Sno),Foreign key (Cno) references C(Cno),);5、授课表Create table Class(Cno char(9) not null, Tno char(9) not null, Clno char(8) not null, Cltime char(5) not null,Clnum int not null,Primary key (Sno,Cno,Clno),Foreign key (Tno) references T(Tno),Foreign key (Cno) references C(Cno),);(三)、插入数据1、学生数据Insert into SValues(121546001,张三,男,20,信息学院,30,12)Insert into SValues(121145011,李四,男,21,物流学院,28,10)Insert into SValues(125645023,王五,男,21,劳法学院,25,9)Insert into SValues(124645021,赵芸,女,19,外语学院,26,8)Insert into SValues(125645015,李欣,女,20,经济学院,28,8)Insert into SValues(127645016,赵芸,女,19,商学院,32,8)2、课程数据Insert into CValues(A012,计算机科学与技术3)Insert into CValues(B1012,英语口语2)Insert into CValues(B2012,非洲文化2)Insert into CValues(C23012,物流统计3)Insert into CValues(E012,统计学2)Insert into CValues(G012,会计学3)Insert into CValues(F012,交谊舞1)Insert into CValues(H0012,劳动保障与法律2)3、教师数据Insert into TValues(A001,张俊,讲师,45,男)Insert into TValues(B011,李安国,教授,50,男)Insert into TValues(A021,迟龙,副教授,49,男)Insert into TValues(G001,李梅,副教授,45,女)Insert into TValues(H370,张燕,教授,42,女)Insert into TValues(B001,张杰,教授,47,男)Insert into TValues(HB011,何眉,副教授,45,女)Insert into TValues(C001,王军,教授,48,男)4、选课数据Insert into SCValues(H0012,121546001)Insert into SCValues(F012,121145011)Insert into SCValues(G012,125645023)Insert into SCValues(E012,125645023)Insert into SCValues(E012,121145011)Insert into SCValues(B2012,125645015)5、授课数据Insert into ClassValues(A012,A001,125B1,2-1,30)Insert into ClassValues(B1012,B011,15C1,1-1,80)Insert into ClassValues(B2012,A021,1121,1-5,130)Insert into ClassValues(C23012,G001,15B1,3-5,30)Insert into ClassValues(E012,H370,J21,4-9,80)Insert into ClassValues(G012,B001,545,2-7,130)(四)、创建视图1、创建可供选择课程的视图Create view C_ScAsSelect C.Cno,C.name,C.Credit,Class.Cltime,Class.ClnoFrom C,ClassWhere C.Cno=Class.Cno2、创建教师授课视图Create view T_ClAs SelectT.Tno,T.Tpro,T.Tbirth,T.Tsex,Class.Clno,Class.Clnum,Class.Cltime,Class.Cno,C.Cname,C.CreditWhere C.Cno=Class.Cno and Class.Tno=T.Tno注:本系统可以根据需要创建所需视图,这里不再一一赘余。(五)、索引的建立与删除1、为S表建立索引Create unique index Ssno on Student(Sno)2、建立相应的SC表索引Create unique index SCno on SC(Sno ASC,Cno,DESC)3、删除索引删除S表的Ssno索引:DROP index Ssno(六)、数据库的基本操作1、插入Insert into 属性列Values();例:同上录入数据,表明的属性列可以省略,默认为建表时的属性顺序。2、更新UPDATE Set Where例:(1)、由于输入学生年龄时全为周岁,现根据需要改为虚岁,即将所有学生年龄增加一岁。Update S Set Sbirth=Sbirth+1;(2)、将信息学院学生的学分上限改为32.Update S Set Smaxcredit=32Where Sdept=信息学院;3、删除DeleteFrom Where 例:(1)删除张三同学的选课记录DeleteFrom SCWhere 张三=(select Sname From S Where S.Sno=SC.Sno);(2)、删除学号为125645015的学生记录(由于退学原因)Delete From SWhere Sno=125645015;4、查询(1)、统计选修了英语口语的学生人数。Select count(Sno

温馨提示

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

评论

0/150

提交评论