计算机软件--网上选课系统的设计与实现(编辑修改稿)内容摘要:
TEACHER_ID 教师编号 varchar(20) TEST_METHOD 考察方式 nchar(4) 南京人口管理干部学院 15 COMMENT 备注 nvarchar(200) 默认值“无” SELECTPR_NO_LIMIT 最大选课人数 smallint COURSE_ID 课程编号 char(20) DEPT_ID 开课院系编号 char(10) GRADE_ID 面向的年级 tinyint 表 59 反馈信息表 (FeedBack) 字段 说明 类型 (长度 ) 备注 FEEDBACK 1D 反馈信息编号 smallint 主键 FEEDBACK TITLE 反馈信息标题 nvarchar(20) 默认值“无 FEEDBACK_CONTENT 反馈信息内容 nvarchar(3000) USER ID 用户 ID varchar(20) FEEDBACK TIME 反馈时间 datetime 表 510 备份排课记录表 (BackUpArrangeList) 字段 说明 类型 (长度 ) 备注 LIST ID 列表号 int 主键 BACKUP— ID 备份排课记录表 1D varchar(20) 表 511 选课信息表 (CourseSelect) 字段 说明 类型 (长度 ) 备注 ARRANGE_ID 排课编号 int STUDENT_ID 学生学号 varchar(20) 表 512 选课时间段信息表 (courseSelectInterval) 南京人口管理干部学院 16 字段 说明 类型 (长度 ) 备注 BEGIN_TIME 开始选课时间 datetime END_TIME 终止选课时间 datetime 表 513 选课通知表 (CourseSelectNotice) 字段 说明 类型 (长度 ) 备注 NOTICE_ID 通知编号 smallint t键,标识 NOTICE_TITLE 通知标题 nvarchar(20) NOTICE_CONTENT 通知内容 nvarchar(3000) NOTICE_TIME 通知时间 datetime NOTICE_HOT 是否为“热点” bit(2) 默认值“ 0” 表 514 系统用户信息表 (UserInfo) 字段 说明 类型 (长度 ) 备注 USER_TYPE 用户类型 (排课者、教师或学生 ) char(1) USER_ID 用户编号,标识 int USER_NAME 用户名 varchar(20) PASSWORD 用户密码 varchar(20) 以上是在数据库“物理设计”中设计的表 (被称为数据库的“内模式” )。 在设计过程中应尽量避免冗余,并且在各相关的表之间建立约束,以从数据库本身来避免数据冲突,保持数据的完整性和合理性。 注意其中有一部分表是从其他系统 Import进来的。 具体地, DeptInfo 来:自院系管理系统; studentInfo 来自学籍管理系统;TeacherInfo 来自各院系办公系统的教师管理子系统; BuildingInfo 来自学校资产管理系统; CourseSettingInfo 来自各院系办公系统的课程设置子系统。 这些表在这里只是其原所在系统的一部分。 在具体查询过程中,如果全部直接从物理表查询,则要建立多重的联合 (内联 )查询,这样用起来很不方便,也容易出错;同时要从 IIS 发送更多的查询语句到 SQL南京人口管理干部学院 17 服务器,影响效率。 因此建立以下的关键视图 (被称为数据库的“外模式” ),方便查询。 完整排课信息的视图 (VIEW_Arrange)如表 515 所示。 表 515 完整排课信息的视图 VIEW_Arrange 字段 源表 说明 COURSE_ID CourseSettingInfo 课程编号 COURSE_NAME CourseInfo 课程名称 TEACHER_ID CourseSettinglnfo 教师编号 TEACHER_NAME Teacherlnf0 教师姓名 SELECT_LIMIT CourseSettinglnfo 限选性质 SCORE CourseSettinglnfo 学分 TEST_METHOD CourseSettinglnfo 考察方式 0RIENT_DEPT_ID CourseSettinglnfo 面向专业编号 SELECTOR_N0_LIMIT CourseSettinglnfo 最大选课人数 CLASSROOM_NAME ClassroomInfo 教室名称 CLASSR00M_PROPERTY Classroomlnf0 教室属性 DEPT_NAME CourseSettinglnfo 开课院系名称 BUILDING— NAME BuildingInfo 教学楼名称 BULDING— ID Arrange 教学楼编号 DAYJIME Arrange 上课时问 SETTINGID Arrange 课程设置编号 ARRANGE_1D Arrange 排课号 CLASSROOM— ID Arrange 教室编号 完整选课信息的视图 (VIEW_Select)如表 516所示。 表 516 完整选课信息的视图 VIEW_Select 字段 源表 说明 南京人口管理干部学院 18 ARRANGE_ID Arrange 排课号 COURSE_ID CourseSettinglnfo 课程编号 COURSEJNAME CourseInfo 课程名称 TEACHER_ID CourseSettingInfo 教师编号 TEACHERJNAME Teacherlnfo 教师名称 ORIENT_DEPT_ID CourseSettingInfo 面向专业编号 STUDENY_ID Select 学生学号 STUDENT_NAME StudentInfo 学生姓名 视图从表中将用到的一组记录提取出来组成一个虚拟表,而不管数据源中的其他信息,它可以改变这些记录的值,并把更新结果送回到源表中。 从用户的 观点来看,视图和基本表是一样的。 作为数据库的一个重要概念,视图有以下许多优点。 (1)提供了一定程度的逻辑独立性。 当数据库重新构造时,数据库整体的逻辑结构将发生变化。 如果用户程序是通过视图来访问数据的,视图相当于用户的外模式,只需要修改视图定义来保证用户的外模式不变,因此用户的程序也不必改变。 (2)有利于数据保密。 对不同的用户定义不同的视图,而且只授予用户访问自己的视图的权限,使其无法看到其他用户的数据。 (3)简化了用户的操作。 视图机制使用户把注意力集中在自己关心的数据上。 这种视 图所表达的数据的逻辑结构与基本表相比,更易于被用户理解。 而对视图的操作实际上是把对基本表 (尤其是多个基本表 )的操作隐藏了起来,大大简化了用户的操作,同时提高了执行效率,减小了网络流量。 在数据库管理系统中,保证数据库中的数据完整性是非常重要的。 所谓数据完整性,就是指存储在数据库中数据的一致性和正确性。 约束定义关于列中允许值的规则,是强制完整性的标准机制。 使用约束优先于使用触发器、规则和默认值。 查询优化器也使用约束定义生成高性能的查询执行计划。 最后依旧给出各表之间的约束关系图(图 51)。 在 SQL server 联机帮助中,将数据完整性解释如下:“存储在数据库中的所有数据值均正确的状态。 如果数据库中存储有不正确的数据值,则该数据库称为已丧失数据完整性。 ”强制数据完整性可确保数据库中的数据质量。 同时该图也暗示了各表时间的层次关系。 南京人口管理干部学院 19 图 51 数据库各表之间的关系图 6. 系统的实现 系统首页 首先介绍 StudentCourseSettlement 系统的首页。 界面如图 61 所示。 南京人口管理干部学院 20 图 61 系统的首页 从图 61中可以看到,除了一般的头 (包括链接)和脚以及“友情链接”(为了美化页面),主页上还提供了查看通知和登录这两个模块。 可参见如下代码。 1— 模块 1;包含头文件 include/ !include file=include/ !include file=include/ html head title欢迎来到 %=WebName%/title meta equiv=ContentType content=text/html。 charset=gb2312 meta equiv=ContentLanguage content=zh link href=include/ rel=stylesheet type=text/css /head body 南京人口管理干部学院 21 div align =center table align =center bgcolor=FFFAEF tr td width =750 table border=0 width=750 cellspacing=0 cellpadding=0 height=270 tr td width=160 valign=top height=289 !— 模块 2:登录输入窗口。 % (LogIn/) % br !— 模块 3:友情链接。 table border=1 bordercolorlight=0000dd bordercolordark=FFFFFF width=155 cellspacing=0 cellpadding=0 height=50 tr td width=151 height=20 bgcolor=99CCFF valign=middle 链接 /td /tr tr td width=151 height=74 bgcolor=F0F0F0 valign=top align=center a href= target=_blank img src=images/ width=114 height=51 border=0/a 南京人口管理干部学院 22 a href= target=_blank img src=images/ width=114 height=51 border=0/a /td /tr /table /td td width=590 valign=top height=289 !— 模块 4:通知栏。 % (ArrangeCourse/CourseSelectNotice/) % /td /tr /table /div !include file=include/ /body /html 这里使用了模块化的设计,用服务器对象( server) 的 Execute 方法来执行该包含进来的模块,然后再分回到主页面中来。 当然,也可以使用 ” !include”。 现在来看看模块 2登录输入窗口和模块 4通知栏的代码。 !— 模块 2登录输入窗口 位置是 ” /Login/” “ /LogIn/” 包含所有关于登录的功 能模块 . 南京人口管理干部学院 23 该模块自身包含是否登录的判断逻辑 (通过读取 Session 变量 ),如果用户没有登录 ,则提供登录功能 ,并将用户提交的登录信息提交给 ” /LogIn/”判断。 如果用户已经登录 ,则显示用户基本信息 . =../include/ table border=1 bordercolorlight=0000dd width=156 cellspacing=0 cellpadding=0 height=100 % ‘ 如果没有用户 登录 ,则 Session(“ USER_NAME” )是空的 ,此时需要提供登录功能 : if Session(USER_NAME)= then % tr td width=152 height=20 bgcolor=9。计算机软件--网上选课系统的设计与实现(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。