选课管理系统_第1页
选课管理系统_第2页
选课管理系统_第3页
选课管理系统_第4页
选课管理系统_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

1、数学与计算机学院课程设计说明书课程名 称:JAVA数据库网络综合课程设计课程代码:题目:选修课程管理系统年级/专业/班:2012 级计科3班学生姓名:徐茂淋学号:312012080605326开始时间:2014年12 月 2 日完成时间:2014 年12 月 28 日课程设计成绩:学习态度 及平时成 绩(20)技术水平 与实际能 力(20)完成 情况(20)创新(5)说明书(计算书、图纸、 分析报告)撰写质量(35)总分(100)指导教师签名: 年_月 _ 日数学与计算机学院课程设计任务书(2014/ 2015 学年第1学期)专业:计算机科学与技术年级:2012课程名称:JAVA数据库网络综合

2、课程设计课程代码:一、设计题目选修管理系统二、主要内容调查学校教务处,设计用于管理全校学生选修课活动的系统。主要功能有:1. 全校选修计划课程管理;2. 全校选修开课课程管理;3. 全校学生选课管理;4. 全校选修课成绩管理;5. 打印报表;6. 系统维护,如数据安全管理(含备份与恢复)、操作员管理、权限设置等; 要求:1. 设计学生选课录入界面及学生选课查询界面;2. 设计课程输入界面和学生选课表及课程选修情况查询界面;3. 根据学生库和课程库,输出学生课程表(选课冲突时按学号分配课程);三、具体要求1. 对系统作需求分析和数据库逻辑结构设计。2. 设计出ER模型,并完整标明每个实体型的相关

3、属性,推荐使用Erwin实现3. 利用前台开发工具,完成对每个实体型中实体数据的查询和编辑操作,并提供相应的界面。4. 源代码格式规范,注释不少于三分之一.5. 提交完整程序代码、课程设计报告及相关文档;给出系统需求分析和数据库6. 逻辑结构设计;总结开发语言与后台数据库之间的连接形式;总结程序开发过程中系统函数、存储过程、触发器等后台数据库对象在开发过程中的调 用情况(如果没有使用,可不写);设计中遇到的问题,设计的心得体会; 调试所遇到的问题等。四、成果及应提交材料1 源程序一份2. 课程设计报告一份五、主要技术路线提示后台推荐采用SQL server或Oracle ;前台开发环境为JAV

4、A用前台开发工具开发相应系统,学习开发工具与数据库的连接,可采用ADOODBC OLE DB或JDBC连接数据库,并调用系统存储过程、自定义存储过程、 函数等。六、进度安排第12周:数据库系统概念模型、数据模型设计,创建数据库以及相关对象;第13周:前台程序开发,撰写报告,接受检查。七、推荐参考资料1. 王珊、萨师煊,数据库系统概论,高等教育出版社 2006.52. 李刚等,Java程序员之旅-Java数据库技术详解,化学工业出版社,2011.43、 姜中华,刘小春,Java数据库应用程序设计,机械工业出版社,2008.44、 软件开发技术联盟,Java Web开发实践,清华大学出版社,201

5、3.9指导教师签名日期年月日系主任审核日期年月日目录1.相关专业背景功能 132 .需求分析 43. 概念模型与E-R图4. E-R模型转换145. 数据库设计与建立 176. 连接数据库237. 个人总结248 .参考文献 25一、选修课管理系统的相关背景功能选修课管理系统是一个面向学校教务管理人员、教师和学生并为其提供服务 的管理系统。选修课管理系统所经历的三个阶段一、没有电脑的年代,网上选课根本不存在,当时学生根据自己的爱好兴趣等方 面,先选择相应的课程,然后由班级上报院系,再通过人工整理所上报的信息的 办法,决定每个人的选课信息以及任课老师所教的课程, 也就是说几乎谈不上选 修课管理系

6、统这么一说。二、每个院系有了为数不多的几台电脑后, 班级上报院系的信息,由院系先在电 脑上登记,最后交给教务处,教务处通过选修课管理系统(还不够完善) ,经过 审核决定最终结果并公布; 三、电脑普及率很高,也就是现在这样,网上选课已不成问题,教务处直接通过 选修课管理系统,了解与审核选课信息,最终决定最后的结果并公布。有关选修课的概念与定义选修课与 必修课”相对。主要指高等学校和中等专业学校中学习某一专 业的学生可以有选择地学习的课程。在教学计划中一般不作硬性规定。分 限制性选修课程(某些特定专业指定选修课程,对该专业来说可视为必修课 ) 和非限制性选修课程(任意专业选修课程)两种。一般大学的

7、课程都分为校定必 修,院定必修,限选课和任选课这四种,你可以根据你的爱好来选择选修课,也 可以选一些专业方面的课程来修。 选修课不能全都选,学校有规定一学期最高能 修多少个学分,你不能超出这个限制。开设选修课的意义选修课的开设是基于社会对复合型人才的需求,旨在加强大学生人文素质和 科学素质的养成和提高,培养全面发展的高素质人才。要对学生的公共选修课进 行管理,每学期由教务处依据教学计划列出所开设的选修课程 ,学生自主选课,教 务处根据选课情况进行调整,最后确定选修各门课程的学生名单,并对选修课进行 排课和对选修课成绩进行登记。可设置学生可选修的课程范围以及选修的约束条 件。可指定范围内的学分约

8、束及课程门数约束,可指定选修课教师的开设班级的 约束条件,开设班级的人数限制。约束条件将作为学生在网上选课审核的标准。 应实时显示选课冲突信息。网上选课的好处:大学期间总会有很多公共选修课,以往的选课方法是随堂报名。这种方法虽 然直接,但是造成选课的盲目性,有些课堂选课时人满为患,有些课堂无人选课。 原因是传统的选课方法没有预见性, 大家没有事先协调好。使用了网上选课系统 以后,可以在开课前就在网上选课,每个学生的课程在开课前就确定好, 不用浪 费体力去选课,还可以使教学资源合理平均地分配。学校的选修课网上选课报名问题:-教师网上登记选修课(课程审核)-学生网上选课-报名名单调整-导出全校选课

9、报名报表等等选修课管理系统的功能1. 选课。学生能够在网上实现正常学期的本专业本年级推荐选课、本院系开设课程、体育课、政治课、公共英语课、文科计算机课、通选课和公选课的选课;2. 成绩查询。学生能够在网上快速、便捷地查询到自己所有学期的课程成绩 (包 括本院系所学课程成绩、辅修/双学位成绩)。3. 选课情况查询。学生从网上就可以了解自己的选课情况(包括正常学期和暑期学校的选课),避免了许多不必要的麻烦。4. 退课情况查询。学生可以清楚地查看到自己退课的时间和所用的 IP地址。5. 体育课评估。6. 修改密码。此功能更加完善了系统的功能。7. 用户注销。不仅方便用户退出系统重新进行别的操作,而且

10、更为重要的是它 能够及时保证用户在使用此系统时的安全性。系统设置:系统管理员配置相关信息,包括教师登记课程时间范围,学生选课时 间范围,每班最多人数,选修课上课日期,选课学生范围等;教师登记课程:开课教师在规定的时间内登记自己要开设的选修课程;学生选课:学生在规定的选课时间内自由选课报名,在规定时间内,可以退选、补选、改选课程;选课调整:学生选课期截止后,系统管理员可以根据学生本人、班主任或者任课 教师的要求针对个别学生的选课进行调整,包括强制选课、退选、换选三种;生成报表:自动生成EXCEL报表,包括学生本人的选课列表、给班主任的选课名选修课管理系统的使用说明一、学生选课1)学生登陆2)进行

11、初选,复选,补退选3)查询选课情况,上课时间、地点与上课老师4)修改登陆密码,添加或删除选课的相关信息5)查询成绩二、教师查询1)教师登陆2)查询课程信息(上课时间、地点以及课程是否被取消,查询选择自己课 程的学生清单)3)修改登陆密码4)登记学生成绩三、管理员对选修课管理1)设置学生可选修的课程范围以及选课的约束条件2) 添加课程,修改密码、浏览选课情况、关闭选课人数不足15的课程3)对选修课进行排课单和给上课教师的报名名单登记选修课的成绩现行选修课管理系统的特点完全基于浏览器的操作界面,操作简便*灵活的选课管理、灵活选课配置、课程审核设置、学生范围限定等*严格的选课匹配*教师限时课程登记*

12、学生限时网上选课保证选课学生在班级之间均匀分布,杜绝过分集中*管理员可以调整学生选课名单*轻松导出各类选课报表预测选修课管理系统的发展随着科学技术的不断进步,电脑将会基本普及,各种系统的完善程度将会大幅提 高,上一个新台阶,到那时,我想选修课管理系统也将 更灵活,操作更简单,更人性化与智能化二、需求分析学生包含学号等属性,通过登记系统保存学生成绩的信息。学生通过分组程序分出选修 课的学生名单。课程包含课程号,名称等属性。分组信息分出选修课教师,教师包含名称, 教师编号属性。用户通过SQL SERVER 2000的查询分析器直接输入各种操作代码,其中包括对系统管 理员的创建,管理员可以创建其他管

13、理员权限,当然,系统管理员可以对所有表进行修改, 删除,增加。具体需求分析如下: 选修课管理系统功能图:?系统功能需求:?开设课程管理-T理员对所开设的课程进行管理,允许对所开设的课程进行增加,修改,删除等。2查询F以按课程名,教师名,学号等多种方式查询课程信息。对于学生的选课信息,学生只能 查询本人的。?3学生选课管理学生根据所查询的课程信息,选择自己所要选修的课程。对于已经选择了,但不希望选修的课程,可以进行退选。每个学生最多选修8个学分。?.用户信息管理-E够使用系统的每个学生、教师和管理员每人都有一个ID,管理员可以对用户进行增加,删除,修改等操作。2学生成绩管理?成绩管理包括如下功能

14、:(1 )成绩录入-T理员录入学生的成绩信息。(2 )成绩查询学生可以查看自己所选各科课程的成绩。教师可以查询自己所教课程的学生成绩,并打印报表。参与者用例图:分析参与者:ID,姓名,部门等,可以?学生、教师、管理员都是学校里的人员,有一些相同的属性,如 将三者的共性提取出来,形成一个抽象的参与者 一一用户。系统可以识别三个参与者:学生,教师和管理员。学生:查询课表,选课,查询考试成绩 教师:查询课表,查询课程成绩管理员:管理所开设的课程,管理用户,录入成绩,执行各种查询功能。学生选课的数据流图:学生选课信息选课信息成绩信息学号学号学号学生 选课打成绩单打选 课单成绩 登录成绩单选课名单学生选

15、课学生教师课程 数据项:以“学号”为例数据项名:学号数据项含义:唯一标识每一个学生别名:学生编号数据类型:字符型 长度:8取值范围:0000099999 取值含义:前2位为入学年号,后3位为顺序编号与其他数据项的逻辑关系:(无) 数据结构:以“学生”为例数据结构名:学生含义说明:是学籍管理子系统的主体数据结构,定义了一个学生的有关信息 组成:学号,姓名,性别,年龄,所在系 数据流:以“选课信息”为例 数据流名:选课信息说明:学生所选课程信息数据流来源:“学生选课”处理 数据流去向:“学生选课”存储 组成:学号,课程号 数据存储:以“学生选课”为例 数据存储名:学生选课说明:记录学生所选课程的成

16、绩 编号:(无)流入的数据流:选课信息,成绩信息 流出的数据流:选课信息,成绩信息 组成:学号,课程号,成绩存取方式:随机存取 处理过程:以“学生选课”为例 处理过程名:学生选课说明:学生从可选修的课程中选出课程 输入数据流:学生,课程输出数据流:学生选课 根据系统需求中的描述,又可以将系统分为两个顶层用例:选课管理和成绩管 理?选课管理和成绩管理顶层用例图?选课管理用例可以分解为:?.课程信息查询:提供按学生查询,按任课教师查询,按课程名查询等多种查询方式。0 选课:学生对自己所选的课程进行管理,包括增加所选课程,删除所选课程等。? 课程信息管理:管理员对学校所开设的课程进行管理,包括增加课

17、程,删 除课程,修改课程信息等。2用户管理:为简化处理,假设系统从学生管理系统中获取学生信息,从学校 人事管理系统中获取教师信息 。?选课管理用例图:?成绩管理用例可以分解为以下用例:?1 .学生成绩查询?学生查询自己所选课程的成绩。2.课程成绩查询?教师查询自己所教课程的学生成绩。力.成绩管理?管理员录入或修改学生成绩。?学生成绩管理用例图分析用户如何登录到系统中1.2前置条件:无1.3后置条件:如果用例成功,则用户登录到系统中。否则,系统状态不变。1.4事件流1.4.1基本流(1 )当用户开始使用系统时,登录用例启动;(2) 系统提示用户输入用户名和密码;(3) 用户提交;(4 )系统验证

18、输入的用户名和密码,用户登录成功142备选流系统提示错误信息,用户可以重在基本流4中,如果用户输入的名字或密码没有通过验证, 新输入或中止该用例。用户登录用例图:根据以上对系统的总体需求分析, 我们就可以对选修课管理系统有个整体的概念。 通过 对各个用例图的的分析与研究, 就可以对选课管理系统的整个过程有个很具体的把握, 并且 可以知道和明白其工作原理与系统处理细节问题。三、概念模型与E-R图概念模型介绍:学生选修课管理系统的流程:首先由教师或系统管理员等有录入权限的用户 将各自权限范围内的信息进行录入, 然后保存信息到数据库中。有权限的人可以 对这些数据库信息进行修改和删除。所有用户均可以进

19、行信息查询和统计。数据流分析学生选课管理系统的数据流程:首先由教师或系统管理员等有录入权限的用 户将各自权限范围内的信息进行录入处理, 然后保存信息到数据库中。有权限的 人可以对这些库信息进行修改和删除处理。所有用户均可以进行信息查询和统 计,结果可以报表打印。选修课选课系统主要分为两大模块: 管理员模块和一般用户模块,管理员可 以是教师也可以是学生,不过管理员必须承担一定的责任。管理员模块又分为对用户的管理和对选课的管理, 对用户的管理模块应有的 功能是对新用户的添加,对无用用户的删除;选课管理模块应有的功能包括新开 设选修课信息的添加,对原有课程信息的修改,对学校不再开设的课程进行删除,

20、一轮选课结束以后对各科选课人数归零。一般用户模块既学生应用模块是该系统最基本的功能模块,因为此模块应完成访客登录的身份验证,学生选修公共选修课记录的添加,对公共选修课信息的 查询,对教师信息的查询,学生对自己已经选修哪些课进行查询。所以,按照需 要完成的要求又分成了各具体执行模块。学生实体E-R图教师实体E-R图管理员管理员实体E-R图整体E-R图:四、E-R模型转换成关系数据库E-R模型转换成关系数据库的一般规则:1将每一个实体转换成一个关系。2. 所有主码必须定义非空。3. 对于二元联系,按照下列规则定义外码:a. 对一联系:将”一”表中的主码作为外码放在”多”表中。如上图中的计算机系与教

21、师的关系,计算机系只有一个系主任。b. 弱实体:将父表的主码作为外码放在弱实体中。如上图学生与亲属的关系中亲属就是弱实体。c. 一对多联系:将一个表的主码作为外码放在另一个表中。如上图中的班级与学生的联系。d. 多对多联系:建立复合实体,复合实体的主码由两个父实体的主码复合组成。如上图中学生与课表的关系就是多对多的联系,应建立一个复合 实体:成绩。设计关系模型如下:下划线为关系的码学生(学号,姓名,性别,年龄,班级,所在系号,备注)Student( Student_id , Student_name, Student_sex, Student_time, Student_classid,Stu

22、de nt_age, Stude nt_else)此为学生实体对应的关系模式。教师(教师号,姓名,班级,系别,备注)Teacher( Teacher_id , Teacher_name, Teacher_class, Teacher_dept, Teacher_else) 此为教师实体对应的关系模式。课程(课程号,课程名,系名,学分,开课时间,课程表)Course( Course_id , Courseame, Course_time, Class_credit, Course_dept)此为课程实体对应的关系模式。管理员(用户名,密码,登录类型)Man ger (Manger _id , M

23、anger_Passwod, Manger _Power)此为管理员实体对应的关系模式。一五、数据库设计与建立在系统中设立6张表:除了有学生、教师、课程基本表分别记录学生、教师、 课程的基本信息外,考虑到便于系统管理员管理学生用户,设计了用户表,记录 用户登录系统时的用户名、密码以及权限。同时对于学生选课和教师教课都应该 有记录,因此设计了学生选课和教师教课表, 其中学生选课表里,包含了学生选 课的内容和各门课的成绩,便于管理员对成绩的录入、修改以及用户对成绩的查 询和检索:教师教课表的内容主要是包含教师所教课程的信息。首先是用户信息数据表(Manger),用于存储学生管理系统中所有参与人员的

24、 信息,包括教师登录信息、学生登录信息,这样做的目的是可以方便系统判断用 户登录的类型,以及对用户类型的统一管理。用户信息没有包括太多的内容,主 要有用户登录号、用户密码、用户权限代码,读者可以根据自己的具体需要添加 字段,表1显示了表中各个字段的数据类型、大小以及简短描述。表1用户信息数据表(Manger)列名数据类型宽度字段描述Man ger idChar10用户名,设为主键Man ger_Passw odChar20用户登录本系统时的用户密码Man ger PowerInt4用户的类型,0-本校注册学生,1-管理 员在系统中,最重要的对象是学生,系统设计了学生信息数据表 (student

25、),用 于存储本校所有学生信息,其中包括在校生,也包括已毕业学生。表5-7中显示了表中各个字段的数据类型、大小以及简短描述。表2学生信息数据表(Student)列名数据类型宽度字段描述Stude nt idchar20学生的学号,设为主键Stude nt n amechar20学生姓名Stude nt sexChar4学生性别Stude nt timeChar8学生入学时间Stude nt classidchar50学生所在班级号Stude nt ageint4学生年龄Stude nt elsechar50备注系统构建教师信息数据表(teacher)用来存储本校所有教师信息,教师信息表 给出一

26、个较为简单的结构。表3显示了表中各个字段的数据类型、 大小以及简短 描述。表3教师信息数据表(teacher)列名数据类型宽度字段描述Teacher idchar5记录教师号,设为主键Teacher namechar10记录教师姓名Teacher classchar20记录教师所在班级Teacher deptchar20记录教师所在系Teacher elsechar50备注每一个教师讲授什么课程都有记录,而且一门课可能会有多个老师授课。因 此必须包括课程名称、年度、学期、班级号等,以便管理员或学生查询信息,系 统采用教师_课程记录数据表(teacher_course记录以上信息。如表4所示表中

27、各 个字段的数据类型、大小以及简短描述。表4教师-课程记录数据表(teacher course)列名数据类型宽度字段描述IDInt4教师-课程记录的惟一 ID号,设为 主键Teacher idVarchar50教师号Course idVarcharP 50:教师所任课程号Teacher_classVarchar50教师所教班级号Course yearChar| 5年度学期Course me nInt| 4教师所任选修课程限报人数学生总是离不开课程,系统设计了课程信息数据表(course),用于存储本校所 有课程信息,其中包括课程类型、学分等。表5显示了表中各个字段的数据类型、 大小以及简短描述

28、。表5课程信息数据表(course)列名数据类型宽度字段描述Course idchar50 :课程号,设为主键Course namechar50课程名Course timechar40开课时间Class creditInt4课程学分Course deptchar50课程所在系学生所学课程都会有成绩,并且每个学生每一门课只有一个成绩。系统设计 了学生-课程信息数据表(studen course),用于存储本校所有学生所学课程信息, 表6显示了表中各个字段的数据类型、大小以及简短描述。表6 学生-课程记录数据表(student course)列名数据类型宽度字段描述IDchar10学生-课程记录的

29、惟一 ID号,设为主 键Stude ndchar10学生学号Course idchar10学生所学课程号Stude gradeInt4学生成绩Course deptchar50学生所学课程所在系Elective 。系统使用 Microsoft SQL Server 2000建立数据库,库名为库中设计的六个表使用T-SQL建立数据库Elective create database electiveon(n ame=electivedb,file name=e:databaseelective.mdf, size=2,maxsize=10,filegrowth= 1 )log on(n ame=e

30、lectivelog,file name=e:databaseelective_log .lc size=1,maxsize=5,filegrowth=1)go1、使用T-SQL脚本建立学生信息数据表(Student)create table stude nt(Sdchar(20) primary key,S_n ame char(40)not n ull ,S_sex char(4) not n ull, S_dept char(20) not null, S_age char(8) not n ull, S_classid char(50) not null , S_else char(5

31、0)not n ull ,2、使用T-SQL脚本建立教师信息数据表(Teacher)o create table teacher(T_id char(5) primary key,T_n ame char(10) not n ull,T_class char(20) not null, T_dept char(20) not null, T_else char(50) not null,)3、使用T-SQL脚本建立课程信息数据表(Course)o create table course(Cd char(10) primary key, C_name char(20) not null, C_t

32、imechar(40) not null,C_credit int not n ull,C_dept char(50) not null,)_4、使用T-SQL脚本建立课程信息数据表(Student_Course) create table stude nt_course(ID char(10) primary key,S_id char(10) not null,C_id char(10) not null,S_grade int not nu II,C_dept char(50) not null,)5、使用T-SQL脚本建立课程信息数据表(Teacher_Course)create ta

33、ble teacher_course(ID char(10) primary key,T_id char(10) not null,C_id char(10) not null,C_me n int not nu II,T_class char(40) not null,C_year char(50) not null,)6、使用T-SQL脚本建立课程信息数据表(Mangei)。create table man ger(Md char(10) primary key, M_password char(20) not null, M_power intnot n ull,)构建了数据库的表结构后

34、,接下来创建负责表中信息查询、插入、修改、删 除以及授权的相关存储过程(只举例关于表Student , Course, Student_Course 之间的操作,同理可以对表teacher,Course, Student_Course进行相关操作)。 具体操作如下所示:一(一)、查询基本查询1、查询DB_Design课程的课程号和学分SELECT C_id, C_reditFROM CourseWHERE C_name LIKE DB_Design ESCAPE 2、某些学生选修课程后没有参加考试,所以有选修课记录,但没有考试成绩 查询缺少成绩的学生的学号和相应的课程号:SELECT S_id

35、, C_idFROM Stude nt_CourseWHERE S_grade IS NULL;3、查询所有有成绩的学生学号和课程号SELECT S_id, C_idFROM Stude nt_CourseWHERE S_grade IS NOT NULL;4、查询选修了 3号课程的学生的学号及其成绩,查询结果按分数的降序排列SELECT Sd, S_gradeFROM Stude nt_CourseWHERE Cd = 3 ORDER BY S_grade DESC;5、查询选修了课程的学生人数SELECT COUNT(DISTINCT S_id)FROM Stude nt_Course6、

36、计算选修了 1号课程的学生平均成绩SELECT AVG(S_grade)FROM Stude nt_CourseWHERE C_id = 1 ;7、求各个课程号及相应的选课人数SELECT C_id, COUNT(S_id)FROM Stude nt_CourseGROUP BY Cd&查询选修了 3门以上课程的学生学号SELECT S_idFROM Stude nt_CourseGROUP BY SdHAVING COUNT(*)3;连接查询1、查询每个学生及其选修课程的情况SELECT Stude nt.S_id, S_n ame, S_sex, S_age, S_dept, Cd, S_

37、grade FROM Stude nt, Stude nt_CourseWHERE Student.Sd =Student_Course .Sd;(自然连接)一一一SELECT Student.*, Student_Course .*FROM Student, Student_Course ;(广义笛卡尔积连接)一2、外连接查询每个学生及其选修课程的情况SELECT Stude nt.S_id, S_n ame, S_sex, S_age, S_dept, Cd, S_grade FROM Stude nt, Stude nt_CourseWHERE Student.Sd =Student_C

38、ourse .Sd(*);查询学校设置的所有课程及其选修情况SELECT Cd, C_name, C_redit, Sd, S_gradeFROM Course, Stude nt_CourseWHERE Course.Cd = Student_Course .Cd(*);3、多表连接例查询每个学生的学号、姓名、选修的课程名及成绩SELECT Stude nt.S_id, S_name, C_nameFROM Stude nt, Course,Stude nt_CourseWHERE Student.Sd =Student_Course .SdAND Student_Course .Cd =

39、Course.C_id4、带有IN谓词的子查询查询与 刘晨”在同一个系学习的学生-使用嵌套实现此查询SELECT Sd, S_name, S_deptFROM Stude ntWHERE S_dept IN(SELECT S_deptFROM Stude ntWHERE S_name =刘晨);6、使用嵌套查询实现查询选修了课程名为信息系统”的学生学号和姓名SELECT Sd, S_name(3)FROM Stude ntWHERE Sd IN(SELECT S_id(2)FROM Stude nt_CourseWHERE C_id IN(SELECT Cd(1)FROM CourseWHER

40、E C_name=信息系统);(二)、插入插入一条选课记录(95020 1INSERT INTO Stude nt_Course (Sd, Cd)VALUES(95002 ,1 );将一个新学生记录插入到Stude nt表中INSERT INTO Stude ntVALUES(95002陈冬男,IS , 18);(三八修改修改某一个元组的值例将学生95001的年龄改成22岁UPDATE Stude ntSET S_age = 22WHERE S_id = 95001;(四)、删除删除一个或多个元组 例删除学号为95019的学生记录DELETE FROM Stude ntWHERE S_id =

41、 95019;删除计算机系所有学生的选课记录DELETE FROM Stude nt_CourseWHERES_dept=(SELETE S_deptFROM Stude ntWHERE Student.Sd = Student_Course .Sd);(五八授权授权GRANT 权限, 权限 ON 对象类型 对象名 TO 用户 , 用户 WITH GRANT OPTION;对象对象类型操作权限属性列TABLESELECT,INSERT,UPDATE, DELETE, ALL PRIVILEGES基表TABLESELECT,INSERT,UPDATE,DELETE,ALTER, INDEX, A

42、LL PRIVILEGES数据库DATABASECREATETAB1、把查询Student表的权限授给用户 wangGRANT SELECT ON TABLE Stude nt TO wang;2、把对Student表和Course表的全部操作权限授予用户 U2和U3GRANT ALL PRIVILIGES ON TABLE Stude nt. Course TO user2, user3;3、把对Student_Course表的查询权限授予所有用户GRANT SELECT ON TABLE Student_Course TO PUBLIC;4、把查询Student表和修改学号的权限授予用户

43、U4GRANT UPDATE(S_id), SELECT ON TABLE Stude nt TO U4;5、 把对Student_Course表的插入权限授予用户 U5,并允许将此权限再授予其 他用户GRANT INSERT ON TABLE Student_Course TO user5WITH GRANT OPTION;收回权限1、收回U4用户修改学生学号的权限REVOKE UPDATE(S_id) ON TABLE Stude nt FROM U4;2、收回所有用户对表Student_Course的查询权限REVOKE SELECT ON TABLE Student_Course FR

44、OM PUBLIC;3、收回U5用户对表Student_Course的插入权限REVOKE INSERT ON TABLE Student_Course FROM U5;六、连接数据库系统为保持良好的可移植性,采用对数据库配置进行统一管理的方法,将程序中用到的所有连接字符串信息统一放于Web.Config配置文档中,在程序中通过这一配置调用,进行数据库连接。对于数据库调用字符串,由于数据库使用的是本地数据库,Data Source数据源)设置为(local); UID(用户ID)赋值为系统默认的sa: PWD(连接密码)赋值 为空;DATABASE(数据库名称)设为我们上一节中创建的 Elec

45、tive 。Web.Co nfig配置文档的相关主要代码如下:vappSetti ngs v/appSetti ngsv/con figurati on在每个需要连接数据库的程序中读取 Web.Co nfig配置文档中的数据库设置 信息,只要使用如下语句即可。stri ng strc onn= Con figurati on Sett in gs.AppSett in gsds n;SqlC onn ectio n cn=new SqlC onn ectio n( strco nn);cn. Ope n();我们只要在程序文件中加入这几行代码,就可以将数据库连接字段读取到字 符串strco n

46、n中,就可使用所连接的数据库了。12.4.2设置用户验证和授权在系统中专门建一目录为:manager,把不允许学生浏览的管理员模块的所 有应用程序放入该目录,以便在 Web.C onfig中控制。先在Web.C onfig中设置用户名和密码,代码清单如下:vauthentication mode=Forms vforms n ame=autoCre log in Url=logi n. aspx protect ion=All vcredentials passwordFormat=Clear v/crede ntialsv/authe nticati on然后设置目录manage的访问权限。vlocation path=manager v!-指定有访问权限的目录为 :manager- vsystem.webvauthorizati onvallow users =ma nager,adm in / v!-指定允许访问目录-man age的用户 -vden

温馨提示

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

评论

0/150

提交评论