基于BS结构的网上选课系统的设计与实现_毕业设计说明书.doc_第1页
基于BS结构的网上选课系统的设计与实现_毕业设计说明书.doc_第2页
基于BS结构的网上选课系统的设计与实现_毕业设计说明书.doc_第3页
基于BS结构的网上选课系统的设计与实现_毕业设计说明书.doc_第4页
基于BS结构的网上选课系统的设计与实现_毕业设计说明书.doc_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

单位代码 01 学 号 080301113 分 类 号 TP393 密 级 毕业设计说明书 基于 B S 结构的网上选课系统的设计与实现 院 系 名称信息工程学院 专业名称计算机科学与技术 学生姓名郭文典 指导教师杨志武 2010 年 5 月 14 日 黄河科技学院毕业设计说明书 第 I 页 基于 B S 结构的网上选课系统的设计与实现 摘 要 本论文详细介绍了网上选课系统实例的开发与应用 是一个数据库应用系统完整 的制作过程 主要内容有 系统开发背景 系统概述 需求分析 系统设计 功能 感受与体会等 其中需求分析中主要对系统的数据流程图进行了详细描绘 系统设计 中主要描绘出了网上选课系统的模块设计图和该系统数据库的设计 功能与操作中介 绍了对该网上选课系统实例的基本功能 本文通过分析浏览器 服务器结构的特点并结合选课的实际情况 提出了基于浏览 器 服务器结构网上选课系统的基本设计思想 介绍了系统各功能模块及数据库的设计 并给出了部分实现代码 通过该系统 使学生可以方便地在校园网上进行网上选课 该 B S 结构的系统在 Windows XP 系统和 VS NET 平台下开发完成 使用 C 作为 ASP NET 的开发语言 SQL Server 2000 作为数据库 系统有较高的安全性和较好的性 能 其中连接数据库的字符串可以随时在 web config 里修改 并经过编码加密 增加 了灵活性 保护了数据库的安全 经过测试以及在实际使用证明 本文所设计的教职工档案管理系统可以满足学校 人事 管理方面的需要 在满足需求的同时 也体现出了操作简便 友好实用 安全 可靠等特点 关键词 网上选课 ASP NET 数据库管理系统 黄河科技学院毕业设计说明书 第 II 页 The Design and Implementation of an Online Course Choosing System Based on B S structure Author Guo wendian Tutor Yang zhiwu Abstract With the development of the enrolling number the data for daily registry is increasing too And always we should goto classroom to enroll Although this method directly but result in blindness of the course enrollment and registry data processing of the heavy In order to reduce the work registry and better each student to choose their own favorite subjects This system is special for the on line course choosing to design both from the aspect of the student and the teacher The student can choose the course independently and the teacher can manage the information of the announcing course also This paper gives the basic design idea of the Browser Server structure based online course elect system by analyzing the characteristic of the Browser Server structure and combining with the actual public elective courses conditions of our school By using this system students can elect courses online efficiently This Browser Server structure system is developed under VS NET platform in Windows XP operating system using C as ASP NET development language and SQL Server 2000 as the database This system is of higher security and better performance The character string which is used to connecting to the database can be modified at any time in the file web config The string is encoded and encrypted increasing flexibility of the system and security of the database In code Keywords online course elect ASP NET DBMS 黄河科技学院毕业设计说明书 第 III 页 目 录 1 绪论 1 1 1 选题的背景和意义 1 1 2 课题的可行性分析 1 2 主要开发工具和技术简介 3 2 1 基于 B S 的体系结构 3 2 2 DREAMWEAVER开发工具简介 3 2 3 ASP 概述 5 2 4 小结 6 3 需求分析 7 3 1 系统功能概述 7 3 2 本章小结 9 4 系统结构设计 10 4 1 系统的结构设计 10 4 2 数据库原理 11 4 3 数据库系统分析 15 4 4 数据库物理实现 17 5 详细设计 20 5 1 数据库的连接和系统基本设置 20 5 2 用户登陆 21 5 3 系统管理说明 27 5 4 教师管理说明 31 6 系统的运行与测试 36 6 1 软件测试 36 6 2 软件测试的目的 36 黄河科技学院毕业设计说明书 第 IV 页 6 3 测试的内容 37 6 4 测试用例 37 6 5 测试结论 39 7 系统的使用说明与安装 40 7 1 安装设置 40 结 论 42 致 谢 43 参考文献 44 黄河科技学院毕业设计说明书 第 1 页 1 绪 论 1 1 选题的背景和意义 学生选课系统是一个学校不可缺少的部分 它的内容对于学校的决策者和管理者来 说都至关重要 所以学生选课系统应该能够为用户提供充足的信息和快捷的查询手段 但一直以来人们使用传统人工的方式管理文件档案 这种管理方式存在着许多缺点 如 效 率低 保密性差 另外时间一长 将产生大量的文件和数据 这对于查找 更新和维护都 带来了不少的困难 随着科学技术的不断提高 计算机科学日渐成熟 其强大的功能已为人们深刻认识 它已进入人类社会的各个领域并发挥着越来越重要的作用 作为计算机应用的一部分 使用计算机对选课信息进行管理 有着手工管理所无法 比拟的优点 例如 检索迅速 查找方便 可靠性高 存储量大 保密性好 寿命长 成本低等 这些优点能够极大地提高人事劳资管理的效率 也是企业的科学化 正规化 管理 与世界接轨的重要条件 因此 开发这样一套软件成为很有必要的事情 在下面的各章中我们将以开发一 套学生选课系统为例 谈谈其开发过程和所涉及到的问题及解决方法 本文中所做的主要工作如下 1 阐述整个个性化页面生成系统的系统结构及工作原理 分析了系统实现中的特 殊性 难点和重点 2 设计实现用户管理 课程管理 选课信息录入管理 新生信息录入管理 课程 的浏览和查找 学生查找等 ASP NET 页面 3 分析并解决实现中的若干技术问题 4 建立完整的网上选课 进行测试并分析结果 1 2 课题的可行性分析 1 技术可行性 本系统仅需要一台装有 Office 软件的计算机即可 对机器本 身没有太高的要求 一般当前学校或个人电脑完全可满足要求 对于软件技术要求 黄河科技学院毕业设计说明书 第 2 页 现在的程序设计语言已非常成熟 要运用 HTML 样式 图形图象制作工具来制作生动活 泼的网页及美观的图形文件或动画文件 数据库使用 SQL Server 2000 中提供的数据 库桌面工具 ODBC 2 经济可行性 由于本系统是为学生选课管理使用的系统 装上该应用软件 即可使用系统 系统成本主要集中在系统软件的开发上 当系统投入运行后可以为学 校节约大量的人力 物力 所带来的效益远远大于系统软件的开发成本 在经济上完 全可行 3 操作可行性 界面设计时充分考虑管理人员的习惯 使得操作简单 数据 录入迅速 规范 可靠 统计准确 制表灵活 适应力强 容易扩充 黄河科技学院毕业设计说明书 第 3 页 2 主要开发工具和技术简介 2 1 基于 B S 的体系结构 在传统的两层 C S Client Server 模型中 客户端承担了过多的角色 而显得臃 肿 这种模型虽然部署比较容易 安全性较高 但是很难进行升级和改进 也不适合 分布式环境中的应用 为了满足档案管理系统中管理员地域分散 以及不断升级和改 进系统以满足用户多样性需求 本系统采用了 B S Browse Server 开发模式进行开发 采用 ASP 作为开发语言 用 SQL Server 2000 数据库进行数据的设计和存储 在 B S 体系结构系统中 用户通过浏览器向分布在网络上的许多服务器发出请求 服务器对浏览器的请求进行处理 将用户所需信息返回到浏览器 B S 结构又被称为瘦 客户端结构 客户端的主要任务是进行页面的显示 服务器将担负更多的工作 对数 据库的访问和应用程序的执行将在服务器上完成 浏览器发出请求 而其余如数据请 求 加工 结果返回以及动态网页生成等工作全部由 Web Server 完成 实际上 B S 体 系结构是把二层 C S 结构的事务处理逻辑模块从客户机的任务中分离出来 由 Web 服 务器单独组成一层来负担其任务 这样客户机的压力减轻了 把负荷分配给了 Web 服 务器 11 这种三层体系结构如图 2 1 所示 Browse 浏览器 Web 服务器 数据库 图 2 1 B S 三层架构示意图 由于客户端和服务器的分离 可以让开发者把主要的精力放到业务逻辑的处理中 去 另外 这种三层结构在层与层之间相互独立 任何一层的改变不会影响其它层的 功能 9 2 2 Dreamweaver 开发工具简介 Dreamweaver 是美国 MACROMEDIA 公司开发的集网页制作和管理网站于一身的 所见即所得网页编辑器 它是第一套针对专业网页设计师特别发展的视觉化网页开发 黄河科技学院毕业设计说明书 第 4 页 工具 利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网 页 DREAMWEAVER FLASH 以及在 DREAMWEAVER 之后推出的针对专业网页图 像设计的 FIREWORKS 三者被 MACROMEDIA 公司称为 DREAMTEAM 梦之队 足见市场的反响和 MACROMEDIA 公司对它们的自信 说到 DREAMWEAVER 我们 应该了解一下网页编辑器的发展过程 随着互联网 Internet 的家喻户晓 HTML 技术 的不断发展和完善 随之而产生了众多网页编辑器 从网页编辑器基本性质可以分为 所见即所得网页编辑器和非所见即所得网页编辑器 则原始代码编辑器 两者各有千 秋 所见则所得网页编辑器的优点就是直观性 使用方便 容易上手 您在所见即所 得网页编辑器进行网页制作和在 WORD 中进行文本编辑不会感到有什么区别 1 Dreamweaver 的优点 1 最佳的制作效率 Dreamweaver 可以用最快速的方式将 Fireworks FreeHand 或 Photoshop 等档案移 至网页上 使用检色吸管工具选择荧幕上的颜色可设定最接近的网页安全色 对于选 单 快捷键与格式控制 都只要一个简单步骤便可完成 Dremweaver 能与您喜爱的设 计工具 如 Playback Flash Shockwave 和外挂模组等搭配 不需离开 Dremweaver 便 可完成 整体运用流程自然顺畅 除此之外 只要单击便可使 Dreamweaver 自动开启 Firework 或 Photoshop 来进行编辑与设定图档的最佳化 2 网站管理 使用网站地图可以快速制作网站雏形 设计 更新和重组网页 改变网页位置或 档案名称 Dreamweaver 会自动更新所有连结 使用链接文字 HTML 码 HTML 属 性标签和一般语法的搜寻及置换功能使得复杂的网站更新变得迅速又简单 3 无可比拟的控制能力 Dreamweaver 是唯一提供 Roundtrip HTML 视觉化编辑与原始码编辑同步的设计 工具 它包含 HomeSite 和 BBEdit 等主流文字编辑器 帧 frames 和表格的制作速度快 的令您无法想像 进阶表格编辑功能使您简单的选择单格 行 栏或作未连续之选取 甚至可以排序或格式化表格群组 Dreamweaver 支持精准定位 利用可轻易转换成表 格的图层以拖拉置放的方式进行版面配置 所见即所得 Dreamweaver 成功整合动态式 出版视觉编辑及电子商务功能 提供超强的支援能力给 Third party 厂商 包含 黄河科技学院毕业设计说明书 第 5 页 ASP Apache BroadVision Cold Fusion iCAT Tango 与自行发展的应用软体 当 您正使用 Dreamweaver 在设计动态网页时 所见即所得的功能 让您不需要透过浏览 器就能预览网页 梦幻样版和 XML Dreamweaver 将内容与设计分开 应用于快速网页 更新和团队合作网页编辑 建立网页外观的样版 指定可编辑或不可编辑的部份 内 容提供者可直接编辑以样式为主的内容却不会不小心改变既定之样式 您也可以使用 样版正确地输入或输出 XML 内容 全方位的呈现利用 Dreamweaver 设计的网页 可 以全方位的呈现在任何平台的热门浏览器上 对于 cascading style sheets 的动态 HTML 支援和鼠标换图效果 声音和动画的 DHTML 效果资料库可在 Netscape 和 Microsoft 浏 览器上执行 使用不同浏览器检示功能 Dreamweaver 可以告知您在不同浏览器上执 行的成效如何 当有新的浏览器上市时 只要从 Dreamweaver 的网站在下载它的描述 档 便可得知详尽的成效报告 2 Dreamweaver 的不足 1 难以精确达到与浏览器完全一致的显示效果 也就是说您在所见即所得网页编 辑器中制作的网页放到浏览器中是很难完全达到您真正想要的效果 这一点在结构复 杂一些的网页 如分帧结构 动态网页结构 中便可以体现出来 2 页面原始代码的难以控制性 比如您在所见即所得编辑器中制作一张表格也要 几分钟 但您要它完全符合您要求可能需要几十分钟 甚至更多时间 而相比之下 非所见则所得的网页编辑器 就不存在这个问题 2 3 ASP 概述 ASP 是 Active Server Page 的缩写 意为 动态服务器页面 ASP 是微软公司开 发的代替 CGI 脚本程序的一种应用 它可以与数据库和其它程序进行交互 是一种简单 方便的编程工具 ASP 的网页文件的格式是 asp 现在常用于各种动态网站中 ASP 是一种服务器端脚本编写环境 可以用来创建和运行动态网页或 Web 应用程序 ASP 网页可以包含 HTML 标记 普通文本 脚本命令以及 COM 组件等 利用 ASP 可以向 网页中添加交互式内容 如在线表单 也可以创建使用 HTML 网页作为用户界面的 web 应用程序 与 HTML 相比 ASP 网页具有以下特点 1 利用 ASP 可以实现突破静态网页的一些功能限制 实现动态网页技术 2 ASP 文件是包含在 HTML 代码所组成的文件中的 易于修改和测试 黄河科技学院毕业设计说明书 第 6 页 3 服务器上的 ASP 解释程序会在服务器端执行 ASP 程序 并将结果以 HTML 格 式传送到客户端浏览器上 因此使用各种浏览器都可以正常浏览 ASP 所产生的网页 4 ASP 提供了一些内置对象 使用这些对象可以使服务器端脚本功能更强 例如 可以从 web 浏览器中获取用户通过 HTML 表单提交的信息 并在脚本中对这些信息进 行处理 然后向 web 浏览器发送信息 5 ASP 可以使用服务器端 ActiveX 组件来执行各种各样的任务 例如存取数据库 发现或访问文件系统等 6 由于服务器是将 ASP 程序执行的结果以 HTML 格式传回客户端浏览器 因此 使用者不会看到 ASP 所编写的原始程序代码 可防止 ASP 程序代码被窃取 2 4 小结 本章主要介绍了本课题系统开发中所需用到的关键技术 利用上述工具与技术可 以开发出一款网上选课系统 这几种技术的综合使用也能使系统在性能方面有较大的 优越性 黄河科技学院毕业设计说明书 第 7 页 3 需求分析 3 1 系统功能概述 本系统是一个因特网上开放式的网上选课系统 只要具有相应权限 管理员可以 随时随地的进行选课操作 方便高效快捷 管理员可以进行录入个人信息 修改信息 删除信息 查询信息等基本信息操作 具有强大的统计功能 支持准确的数据查询功 能 超级管理员具有对账号的修改 添加 删除操作权限 在本系统中 有三类用户 系统管理员 教师和学生 三种不同的用户所具有的 操作权限以及操作内容均不一样 本选课系统给予教师很大的自主权 系统管理员只负责向系统中添加学生和教师 的个人信息以及教学楼教室信息 系统管理员不参与开设课程 选择课程等 一切均 由教师 学生等录网站自行完成 系统管理员设置一个选课时间段 在到达时间段以 前 教师可以开设课程 到达时间段以后 学生可以登陆网站选择课程 教师用户登陆网站后可以开设课程 为自己的课程编辑上课时间和地点 当系统 中出现时间地点冲突的时候 系统向教师用户报告并推荐一个时间地点 每门课程可 以是必修或则选修 教师为每门课程设置一个学分 并可以在课程结束后给予分数 如果学生及格 学生将获得该课程的学分 对于学生用户 每个学生除了必须选择必修课程外 至少还要选择两门选修课程 学生可以对自己选课信息锁定 以免不小心被修改 当时候超过选课时段后 系统自 动锁定学生的选课课程 系统可以根据学生的选课信息 生成一份学生自己的课表 课程结束后学生可登录网站查询成绩与学分 根据上面的要求 从操作功能上可以分为两个类 一个是通用操作 主要实现用 户的登录注销和修改密码等 另一种是为不同用户定制不同操作 1 通用操作 1 登录与注销 每个用户都可以用自己的帐号登录系统 用户操作完成后推出系统 注销后可以 黄河科技学院毕业设计说明书 第 8 页 重新登录系统 2 修改密码 每个用户第一次登录都用默认密码 教师和学生与帐号一样 2 用户所具有功能 1 系统管理员 设置选课时间段 系统管理员通过此项功能设置选课时段 只有在选课时间段里 学生才可以选择课程 超过次时间段 学生选课信息被自动所定 不得修改 录入学生与教师个人信息 通过此项功能可以实现对教师和学生的个人信息添加删除 录入教学楼教室信息 通过此项功能可以把学校里所有的教学楼教室的信息录入到系 统中 以便教师在开设课程时候设置上课的教室 2 教师用户 显示和修改个人信息 教师用户登录系统后 可以查看和修改教师的个人信息 如姓名 电话 E mail 地址等 开设课程 教师用户登录系统后 可以开设课程 可以设置该课程为必修课程或 则选修课程 可以设置该课程的最大人数 教师还可以为该课程设置一个前导课程 若学生没有学习或则选择前导课程则不能选择该课程 编辑课程上课时间 教师在开设了课程后 可以灵活地设置上课时间和地点 给学生分数 课程结束后 教师用户登录系统 可以为学过课程的学生给予相应 的成绩 若及格 给予学生学分 3 学生用户 显示和修改个人信息 学生登录系统后 可以查看和修改学生的个人信息 如姓 名 性别 电话等 查看必修课程 学生登录后 可以查看所有的必修课程 查看该课程的信息 上 课时间地点 开课教师信息等 选择选修课程 学生登录系统后 在所有选修课程中可以选择至少两门选修课程 同时可以查看相关信息 黄河科技学院毕业设计说明书 第 9 页 锁定选课信息 学生登录系统 确定了所选课程后 可以锁定自己的选课信息 以防被别人或则自己不小心修改 查看最终选课信息 学生登录系统后 可列出已选择的课程 若选课信息未被锁 定 则可以退选 若所选课程少于两门 系统会提示选择的课程少于两门 课程结束后 学生登录系统可查看自己学习课程的成绩和已获的学分 3 2 本章小结 本章是对系统功能的概要论述 在本章里 对系统管理员 教师和学生的操作做 出了详细的介绍 黄河科技学院毕业设计说明书 第 10 页 4 系统结构设计 4 1 系统的结构设计 在前面的系统的系统功能分析中 将系统划分成 10 个模块 如图 用户登录身份验证模块 设置选课时间模块 录入信息模块 开设课程模块 编辑程序时间地点模块 评分模块 查看课程模块 选课和锁定模块 数据库模块 数据库 访问模块 图 4 1 系统结构图 用户登录身份验证模块是验证用户名和密码 并根据不同的用户类型 跳转到相 对应的页面中 设置选课时间模块提供给系统管理员修改选课时间段 开设课程模块 提供给教师用户 用来开设一门必修课程或者选修课程 编辑课程时间地点模块提供 给教师用户 编辑课程的上课时间地点友好的界面和操作 评分模块用于教师用户给 选修该教师开设的课程的学生评分 查看课程模块包括查看必修课程 查看选修课程 查看已选课程 查看课程成绩单 选课和锁定模块中实现选择选修课程和锁定选课信 黄河科技学院毕业设计说明书 第 11 页 息的功能 4 2 数据库原理 1 数据库概要 数据 实际上就是描述事物的符号记录 数据的特点 有一定的结构 有型与值之分 如整型 实型 字符型等 而数据 的值给出了符合定型的值 如整型值 15 数据库 是数据的集合 具有统一的结构形式并存放于统一的存储介质内 是多 种应用数据的集成 并可被各个应用程序共享 数据库存放数据是按数据所提供的数据模式存放的 具有集成与共享的特点 数据库管理系统 一种系统软件 负责数据库中的数据组织 数据操纵 数据维 护 控制及保护和数据服务等 是数据库的核心 数据库管理系统功能 1 数据模式定义 即为数据库构建其数据框架 2 数据存取的物理构建 为数据模式的物理存取与构建提供有效的存取方法与手 段 3 数据操纵 为用户使用数据库的数据提供方便 如查询 插入 修改 删除等 以及简单的算术运算及统计 4 数据的完整性 安生性定义与检查 5 数据库的并发控制与故障恢复 6 数据的服务 如拷贝 转存 重组 性能监测 分析等 为完成以上六个功能 数据库管理系统提供以下的数据语言 1 数据定义语言 负责数据的模式定义与数据的物理存取构建 2 数据操纵语言 负责数据的操纵 如查询与增 删 改等 3 数据控制语言 负责数据完整性 安全性的定义与检查以及并发控制 故障恢 复等 数据语言按其使用方式具有两种结构形式 交互式命令 又称自含型或自主型语言 宿 主型语言 一般可嵌入某些宿主语言中 黄河科技学院毕业设计说明书 第 12 页 数据库管理员 对数据库进行规划 设计 维护 监视等的专业管理人员 数据库系统 由数据库 数据 数据库管理系统 软件 数据库管理员 人员 硬件平台 硬件 软件平台 软件 五个部分构成的运行实体 数据库应用系统 由数据库系统 应用软件及应用界面三者组成 文件系统阶段 提供了简单的数据共享与数据管理能力 但是它无法提供完整的 统一的 管理和数据共享的能力 层次数据库与网状数据库系统阶段 为统一与共享数据提供了有力支撑 关系数据库系统阶段 数据库系统的基本特点 数据的集成性 数据的高共享性与低冗余性 数据独 立性 物理独立性与逻辑独立性 数据统一管理与控制 数据库是网站的核心 数据 库设计的合理与否对网站的建设有着至关重要的影响 数据库系统的三级模式 1 概念模式 数据库系统中全局数据逻辑结构的描述 全体用户公共数据视图 2 外模式 也称子模式与用户模式 是用户的数据视图 也就是用户所见到的数 据模式 3 内模式 又称物理模式 它给出了数据库物理存储结构与物理存取方法 数据库系统的两级映射 1 概念模式到内模式的映射 2 外模式到概念模式的映射 2 数据模型 数据模型的概念 是数据特征的抽象 从抽象层次上描述了系统的静态特征 动 态行为和约束条件 为数据库系统的信息表与操作提供一个抽象的框架 描述了数据 结构 数据操作及数据约束 E R 模型的基本概念 1 实体 现实世界中的事物 2 属性 事物的特性 3 联系 现实世界中事物间的关系 实体集的关系有一对一 一对多 多对多的 联系 E R 模型三个基本概念之间的联接关系 实体是概念世界中的基本单位 属性有属 黄河科技学院毕业设计说明书 第 13 页 性域 每个实体可取属性域内的值 一个实体的所有属性值叫元组 E R 模型的图示法 实体集表示法 属性表法和联系表示法 层次模型的基本结构是树形结构 具有以下特点 1 每棵树有且仅有一个无双亲结点 称为根 2 树中除根外所有结点有且仅有一个双亲 从图论上看 网状模型是一个不加任何条件限制的无向图 关系模型采用二维表来表示 简称表 由表框架及表的元组组成 一个二维表就 是一个关系 在二维表中凡能唯一标识元组的最小属性称为键或码 从所有侯选健中选取一个 作为用户使用的键称主键 表 A 中的某属性是某表 B 的键 则称该属性集为 A 的外键 或外码 关系中的数据约束 1 实体完整性约束 约束关系的主键中属性值不能为空值 2 参照完全性约束 是关系之间的基本约束 3 用户定义的完整性约束 它反映了具体应用中数据的语义要求 3 关系代数 关系数据库系统的特点之一是它建立在数据理论的基础之上 有很多数据理论可 以表示关系模型的数据操作 其中最为著名的是关系代数与关系演算 关系模型的基本运算 插入 删除 修改 查询 包括投影 选择 笛卡尔积运 算 4 数据库设计与管理 数据库设计是数据应用的核心 数据库设计的两种方法 1 面向数据 以信息需求为主 兼顾处理需求 2 面向过程 以处理需求为主 兼顾信息需求 数据库的生命周期 需求分析阶段 概念设计阶段 逻辑设计阶段 物理设计阶 段 编码阶段 测试阶段 运行阶段 进一步修改阶段 需求分析常用结构析方法和面向对象的方法 结构化分析 简称 SA 方法用自顶 向下 逐层分解的方式分析系统 用数据流图表达数据和处理过程的关系 对数据库 黄河科技学院毕业设计说明书 第 14 页 设计来讲 数据字典是进行详细的数据收集和数据分析所获得的主要结果 数据字典是各类数据描述的集合 包括 5 个部分 数据项 数据结构 数据流 可以是数据项 也可以是数据结构 数据存储 处理过程 数据库概念设计的目的是分析数据内在语义关系 设计的方法有两种 1 集中式模式设计法 适用于小型或并不复杂的单位或部门 2 视图集成设计法 设计方法 E R 模型与视图集成 视图设计一般有三种设计次序 自顶向下 由底向上 由内向外 视图集成的几种冲突 命名冲突 概念冲突 域冲突 约束冲突 关系视图设计 关系视图的设计又称外模式设计 关系视图的主要作用 1 提供数据逻辑独立性 2 能适应用户对数据的不同需求 3 有一定数据保密功能 数据库的物理设计主要目标是对数据内部物理结构作调整并选择合理的存取路径 以提高数据库访问速度有效利用存储空间 一般 RDBMS 中留给用户参与物理设计的内 容大致有索引设计 集成簇设计和分区设计 数据库管理的内容 1 数据库的建立 2 数据库的调整 3 数据库的重组 4 数据库安全性与完整性控制 5 数据库的故障恢复 6 数据库监控 数据库是此类系统的核心 系统中所有的信息都存储在数据库中 在所有 ASP NET 页面中通过 ADO NET 与数据库连接 操作数据库中的数据 从而实现所有需要的功能 数据库软件有很多 如 Microsoft SQL Server 2000 等 本系统中数据库采用 Microsoft SQL Server 2000 作为数据库工具 数据库是网站的核心 数据库设计的合 理与否对网站的建设有着至关重要的影响 一个良好的数据库开发过程一般是先系统 黄河科技学院毕业设计说明书 第 15 页 分析 再逻辑设计 然后物理实现 系统分析中分析数据库用户需求 并画出 E R 图 直观地表示出数据库系统的需求 逻辑设计中根据系统分析设计的一个关系模型 物 理设计为逻辑设计中的数据模型选取一个最合理的应用环境的物理结构 通常选取一 个常用数据库软件 用数据库软件创建与逻辑设计中数据模型对应的数据库 4 3 数据库系统分析 本系统的数据库实体主要有 学生 教师 教学楼 教室 课程 等 其 中 教师 与 课程 存在 开设 联系 并且一个教师可以开设 N 门课程 即 教 师 与 课程 之间是一对多的关系 一个学生可以学习 N 门课程 一门课程可以有 M 个学生学习 即 学生 与 课程 之间是多对多的关系 同样 课程 与 教室 之间也是多对多的关系 整个数据库可以用一个 E R 图表示 如图 图 4 2 实体之间关系的 E R 图 E R 实体图 管理员信息实体 E R 图 如图 4 3 所示教师用户实体 E R 图如图 4 4 所示 学生用户信息实体 E R 图如图 4 5 所示 院系信息实体 E R 图如图 4 6 所示 图 4 3 管理员信息实体 E R图 如图 4 4 教师用户实体 E R 图 教师1开设N 课程 选修 学生 教室 管理员 教学楼 上课地点时间 属于 N M M 1 管理员 用户名 密 码 教 师 教师姓名 教师工号 所属院系 院 系 学 生 性 别 所属院系 用户编号 所属专业 黄河科技学院毕业设计说明书 第 16 页 图 4 5 学生用户信息实体 E R 图 图 4 6 院系信息实体 E R 图 专业信息实体 E R 图如图 4 7 所示 课程信息实体 E R 图如图 4 8 所示 图 4 7 专业信息实体 E R 图 图 4 8 课程信息实体 E R 图 数据库逻辑设计就是将 E R 图转换为关系模型的过程 即将所有实体和关系转换 成一系列的关系模式 转换过程中常见规则有 1 一个实体型转换为一个关系模式 2 一个一对一的联系可转换成一个独立的关系模式 也可与任意一端对应的关系 模式合并 3 一个一对多的联系可以转换成一个独立的关系模式 也可与多的那一端对应的 关系模式合并 4 一个多对多的关系转换成一个关系模式 根据以上四条规则 下面将 E R 图转换成关系模型 对于 教学楼 教室 和两者之间的关系 就可以根据规则 3 转换成两个关 系模式 教学楼 教学楼 ID 教学楼名称 教室 教室 ID 教学楼 ID 教室名称 对于 学生 课程 和它们之间的 选修 关系就可以规则 4 转换成三个关 系模式 学生 学号 姓名 性别 年龄 登陆密码 学分 地址 电话 电子邮件 课程 课程编码 课程名称 开课教师编号 学分 课程简介 前导课程编号 选课 学号 课程编号 成绩 依次类推 剩下的关系转换成下面三个关系模式 院系名称 学生姓名 管理员 专业名称院系名称 课 程 学生姓名 所属院系 用户编号 所属专业 黄河科技学院毕业设计说明书 第 17 页 教师 教师编号 姓名 性别 年龄 电话 电子邮件 个人简介 课程时间地点 课程编号 开始周次 结束周次 上课时间 上课教室 ID 管理员 帐号 密码 4 4 数据库物理实现 经过数据库系统分析和逻辑设计后 数据库的结构已经非常清晰 剩下的就是用 一种数据库软件实现这样的结构 物理设计为逻辑设计中的数据模型选取一个最合理 的应用环境的物理结构 用数据库软件创建与逻辑设计中数据模型对应的数据库 本 系统中数据库采 Microsoft SQL Server 2000 作为数据库 首先我们在 Microsoft SQL Server 2000 的 企业管理器 创建一个数据库 我们命名为 SC 如图 4 9 图 4 9 数据库界面 选中 SC 数据库 向数据库中添加 7 个表 黄河科技学院毕业设计说明书 第 18 页 Student Teacher Course SC CourseTime Building Room 和 Admin 每个表与逻 辑设计中一种的关系模式相对应 下面是每个数据表中的属性 包括属性列的名称 数据类型 长度 是否可以为空和备注说明等内容 1 Student 表 Student 表用来存储学生的个人信息 使用学号作为主键 其详 细信息请看下表 表 1 Student 表 2 Teacher 表 Teacher 表用来存储教师的个人信息 用学校分配给教师的教师 编号作为主键 这样可以避免重复 其详细信息请看下表 表 2 Teacher 表 3 Course 表 Course 表用来存储课程信息 Course 表以课程编号为主键 设置 课程编号自动增加 1 通过建表的时候对属性列设置 标识 并设置 标识递增量 为 1 表中开课教师 Id 为外键 所有 TId 的值必须是 Teacher 表中的 TId 值 设置外键关系可以通过在建立表的窗口中单击右键 在右键菜单中选择 关系 在弹 出的对话框中设置外键关系 其详细信息请看下表 表 3 Course 表 黄河科技学院毕业设计说明书 第 19 页 4 SC 表 SC 表用于存储学生的选课信息 在 SC 表中学号和课程编号是主键 同 时也是外键 其详细信息请看下表 表 4 SC 表 5 CourseTime 表 CourseTime 表用来存放课程的上课时间和上课地点信息 其 中课程编号和教室编号为外键 其详细信息请看下表 表 5 CourseTime 表 6 Room 表 Room 表用来存放教室信息 在 Room 表中 教室编号为主键 自动 增加 1 教学编号为外键 其详细信息请看下表 表 6 Room 表 7 Admin 表 Admin 表用来存放系统管理员信息 其详细信息请看下表 表 7 Admin 表 黄河科技学院毕业设计说明书 第 20 页 黄河科技学院毕业设计说明书 第 21 页 5 详细设计 5 1 数据库的连接和系统基本设置 在本系统中通过对 SQL Server 2000 数据库进行相关操作 其中用来连接数据库 和系统基本设置的公用代码保存在 inc conn asp 文件中 相关代码如下 0 string user txtUser Text Trim string inputkey txtKey Text Trim string key string sql DataSet ds switch type 黄河科技学院毕业设计说明书 第 23 页 case 1 学生 验证学生身份代码 break case 2 教师 验证教师身份代码 break case 3 系统管理员 验证管理员身份代码 break default break 查看必修课程列表页面 如图 5 2 图 5 2 必修课程表页面 登录成功后 进入学生主页 点击 必修课程 链接 得到所有必修课程的列表 黄河科技学院毕业设计说明书 第 24 页 在列表中可以看到所有必修课程及课程的简单信息 如授课教师姓名 课程所占学分 等 在列表中可以点课程名称 如 计算机应用基础 链接 查看课程详细信息 点 教师姓名 如 李萍 链接 查看教师的详细信息 点击 查看上课时间地点 链接 查看对应课程的上课时间和地点 在页面加载的时候从数据库读取所有必修课信息 代码如下 string sql select Course TName from Course Teacher where CType like 必修 and Course TId like Teacher TId 查询处所有必修课程信息 DataSet ds Db ExecuteSelectSql sql if ds null dgCourse DataBind 将查询结果绑定到 DataGrid 中 查看选修课程列表页面 如图 5 3 图 5 3 选修课程列表页面 黄河科技学院毕业设计说明书 第 25 页 单击 选修课程 链接 查看所有选修课程列表 在列表中给出了比必修课程更 多的信息 比如多了对应选修课程的前导课程 最大人数 当前已选人数等 对每个 选修课程均有一个 选修该课程 的按钮 单击此按钮方可选择对应课程 主要代码如下 string sql select x TName select CName from Course as y where y CId x CPreCId as CPreCName from Course as x Teacher where x CType like 选修 and x TId like Teacher TId 查询该学生已选修的课程 DataSet ds Db ExecuteSelectSql sql if ds null dgCourse DataBind for int i 0 i 0 bool locked bool Parse Session Locked ToString if locked lbLock Text 您尚未锁定选课信息 else 黄河科技学院毕业设计说明书 第 26 页 lbLock Text 选课信息已被锁定 dgCourse Columns 9 Visible false 查看已选课程页面 如图 5 4 图 5 4 已选课程页面 在上一步查看选修课程的列表中 选择 计算机密码学 计算机图形学 线 性代数 三门课程后 点击 已选课程 链接查看已经选择的课程列表 在列表中除 了可以看到与上一步中相同的信息外 还可以查看到课程成绩 刚才选择的三门课程 的成绩均为 0 当课程结束后 教师登录本系统给所有学生评分 学生再次浏览此页面 可查看到课程的成绩 若成绩合格 学生可获得对应课程的学分 锁定课程代码如下 string sql select count from SC where SId like Session Id ToString DataSet ds Db ExecuteSelectSql sql int nCourse 0 if ds null if nCourse 0 for int i 0 i 0 dgViewT DataSource ds1 Tables 0 dgViewT DataBind else Response Write MyUtility Alert 添加失败 请检查编号是 否已经存在 return catch Response Write MyUtility Alert 添加失败 请检查编号是否已 经存在 return 黄河科技学院毕业设计说明书 第 31 页 录入教学楼教室信息 在 AdminRoom Aspx 中 教学楼和教室的管理主要包括添加 和删除操作 添加一个教室必须指定其所属的教学楼 如图 5 7 图 5 7 教学楼教室信息页面 添加教学楼代码如下 private void btnAddBuilding Click object sender System EventArgs e if txtBuilding Text Trim Response Write MyUtility Alert 请输入教学楼名称 return string sql insert into Building BuildingName values txtBuilding Text Trim Db ExecuteSql sql 黄河科技学院毕业设计说明书 第 32 页 5 4 教师管理说明 教师用户的功能需求有个人信息的管理 开设课程 课程时间地点编辑 设置学 生成绩 教师个人信息 在 Teacher Aspx 中 在这里可以修改密码和添写教师个人信息 如图 5 8 图 5 8 教师个人信息页面 从数据库中读取教师个人信息显示代码如下 string sql select from Teacher where TId like lbTId Text Trim DataSet ds Db ExecuteSelectSql sql if ds null 黄河科技学院毕业设计说明书 第 33 页 txtTAge Text ds Tables 0 Rows 0 TAge ToString txtTPhone Text ds Tables 0 Rows 0 TPhone ToString txtTMail Text ds Tables 0 Rows 0 TMail ToString if ds Tables 0 Rows 0 TSex ToString 男 ddlTSex SelectedIndex 0 else ddlTSex SelectedIndex 1 修改信息代码如下 string sql update Teacher set TName txtTName Text Trim TAge txtTAge Text Trim TSex ddlTSex SelectedItem Text TPhone txtTPhone Text Trim TMail txtTMail Text Trim where TId Session Id ToString if Db ExecuteSql sql 1 Response Write MyUtility Alert 修改成功 修改密码代码如下 if txtKey Text Trim txtKeyConfirm Text Trim Response Write MyUtility Alert 两次输入密码不相符合 return string sql update Teacher set TKey MyUtility MD5 txtKey Text Trim where TId Session Id ToString if Db ExecuteSql sql 1 Response Write MyUtility Alert 修改成功 else Response Write MyUtility Alert 修改失败 黄河科技学院毕业设计说明书 第 34 页 开设课程 在 NewCourse Aspx 中 在这里可以添加新课程 其中包括课程名称 课程类型 学分 前导课程 最大人数 课程介绍 每个用户都可以用自己的帐号登 录系统 用户操作完成后推出系统 注销后可以重新登录系统 每个用户第一次登录 都用默认密码 教师和学生与帐号一样 设置选课时间段 系统管理员通过此项功能 设置选课时段 只有在选课时间

温馨提示

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

评论

0/150

提交评论