《基于jsp的学生成绩管理系统毕业设计任务书.docx》由会员分享,可在线阅读,更多相关《基于jsp的学生成绩管理系统毕业设计任务书.docx(59页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于jsp的学生成绩管理系统毕业设计任务书太原理工大学毕业设计(论文)任务书第1页毕业设计(论文)题目:基于jsp的学生成绩管理系统毕业设计(论文)要求及原始数据(资料):1. 要求1. 掌握编程语言和软件开发的方法;2. 了解数据库设计的基本原理;3. 学会使用Java语言编写,采用JSP等技术完成相应功能模块的开发与实现;4. 用通俗易懂的语言将系统的功能进行详细的说明;5. 完成对系统的代码设计搭建及调试等工作;6. 合理进行代码的编写;7. 根据完成系统的相关模块撰写毕业论文;8. 按规定打印毕业设计论文,并装订成册。2.原始数据1. 从网上收集获得有关学生成绩管理系统的资料信息;2.
2、对各种学生成绩管理系统的特点和功能进行分类归纳整理;3.要实现的功能通过不同的访问权限,在不同的条件下实现对学生成绩的管理功能。1.管理员可以对所有资源进行访问,并且可以查看,增加,修改,删除教师、学生和课程的内容,并且管理与控制学生留言,并进行回复。2.教师可以查看自己的个人详细信息,也可以查看别的教师的选课信息,根据学生的选课情况,对选择自己课程的学生成绩评判并提交。 3.学生可以查看自己的个人详细信息,也可以查看别的学生的选课信息,以及教室开设的课程的详细信息,根据自己的情况以及已经开设的课程选择课程。 毕业设计(论文)主要内容:1. 课题的意义人类已进入21世纪,科学技术突飞猛进,经济
3、知识和信息产业初见端倪,特别是信息技术和网络技术的讯速发展和广泛应用,对社会的政治,经济,军事,文化等领域产生越来越深刻的影响,也正在改变人们的工作,生活学习,交流方式.信息的获取,处理,交流和应用能力,已经成为人们最重要的能力之一.在不久的将来知识经济将占世界经济发展的主导地位,国家综合国力和国际竞争能力越来越取决于教育发展,科学技术和知识创新的水平,教育在经济和社会发展过程中将呈现出越来越突出的重要作用.学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段.但是一直以来人们使用传统人工
4、的方式管理学生成绩,填写各种表格,这种管理方式存在着许多缺点,如:效率低,保密性差,另外所用其时间长,产生大量的文件和数据,这对于查找,更新和维护都带来了不少的困难.管理信息系统是进行信息的采集,存储,加工,维护和使用的系统,它是随着管理科学和技术科学的发展而形成的.学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段,对学生来说可以轻松的查阅自己在校的成绩以及信息等.但是一直以来人们都是靠传统人工的方式管理学生成绩,这种管理方式存在着许多缺点,如:效率低,保密性差,另外时间一长,将产生大
5、量的文件和数据,这对于查找,更新和维护都带来了不少的困难.随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用. 作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,有着手工管理所无法比拟的优点.例如:检索迅速,查找方便,可靠性高,存储量大,保密性好, 寿命长,成本低等.这些优点能够极大地提高学生成绩管理的效率,也是企业的科学化,正规化管理,与世界接轨的重要条件.因此,开发这样的一套成绩管理系统成为很有必要的事情。2.系统功能设计与分析总的说来,整个设计包括管理员模块,学生模块和教师模块部分。(1)管理员模块部分管理
6、员模块是对管理员的信息进行管理,并且对课程、教师、学生的信息进行管理。包括教师管理、学生管理、课程管理、成绩处理等功能。(2)学生模块部分查看自己的个人详细信息,也可以查看别的学生的选课信息购物车管理:查看、删除。对于已经有教师开设的课程可以自由选课。留言板。(3)教师模块部分查看自己的个人详细信息,也可以查看别的教师的选课信息包括开设课程、成绩提交、信息查询、密码修改等功能3.毕业设计(论文)设计步骤1.查阅资料;2.学习和熟悉毕业论文撰写过程中各方面的知识;3.熟悉开发环境;4.进行学生成绩管理系统的详细设计和数据库设计;5.进行外文翻译。6.进行毕业设计的程序设计。7.进行毕业论文和文献
7、综述撰写。8.进行毕业论文答辩。4.系统和软件工具操作系统:Windows XP;数据库:MY SQL 5.0;开发语言:JSPJSP服务器:Tomcat 6.0;浏览器:IE6.0及以上版本,推荐使用IE6.0;5.采用的主要技术使用Java语言,采用JSP结合My SQL数据库完成此项目。 JSP(全称JavaServer Pages)是由Sun Microsystems公司倡导和许多公司参与共同建立的一种使软件开发者可以响应客户端请求,而动态生成HTML、XML或其他格式文档的Web网页的技术标准。JSP技术是以Java语言作为脚本语言的,JSP网页为整个服务器端的Java库单元提供了一
8、个接口来服务于HTTP的应用程序。MySQL是一个精巧的sql数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下你可以自由使用。由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐,特别是与Apache和PHP/PERL结合,为建立基于数据库的动态网站提供了强大动力。学生应交出的设计文件(论文):1.毕业设计相关程序源代码;2.毕业设计说明书一本。主要参考文献(资料):1 史斌星,史佳JAVA基础及应用教程M北京:清华大学出版社,2007.2 陈勇孝,郎洪,马春龙JAVA程序设计实用教程M北京:清华大学出版社,200
9、8:26-108.3 徐明华JAVA WEB整合开发与项目实战-JSP AJAX STRUTS HIBERNATE SPRINGM北京:人民邮电出版社发行部,2007:68-96.4 王磊杰,崔军波,韩红宇,于莹华JAVA EE开发指南M北京:人民邮电出版社,2007:106-168.5 柳永坡,刘血梅,赵长海JSP应用开发技术M北京:人民邮电出版社,2005.6 陈建伟,陈焕英JSP动态网站开发M北京:清华大学出版社,2005.7 吴雪Java Script实例手册M北京:电子工业出版社,2004:27-75.8 李绪成,闫海珍,等Java Web程序设计基础教程M西安:西安电子科技大学出版
10、社,2003.9 吴趋超从Java走向J2EEM北京:人民邮电出版社发行部,2004.10 聂庆鹏、毛书朋My SQL动态网站开发与全程实例M北京:电子工业出版社,2005.11 何玉洁数据库原理与应用M北京:机械工业出版社,2007:37-8512 冯博JDBC与Java数据库程序设计M北京:电子工业出版社,2005:12-108.13 Elliotte Rusty HaroldJava网络编程M北京:中国电力出版社,2007.14 Joe WalnesJava开放源码编程M北京:清华大学出版社,2005:43-58.专业班级 计算机科学与技术0701 学生 张宇 要求设计(论文)工作起止日
11、期 2011年4月23日-2011年5月23日 指导教师签字 段利国 日期 2011年3月23日 教研室主任审查签字 日期 系主任批准签字 日期 摘 要学生成绩管理系统主要用于各类大学院校在教学这一部分的管理,是针对于教务处对课程、对学生、对学生成绩进行合理地安排以及统筹计划,以便让教务处以最短的工作时间内把学生的成绩核算出来,提高教务处的办事效率。同时,能够随时对学生基本信息、学生成绩进行各种查询,以便及时很好地对需要了解的信息得到相应的反馈,能有效的帮助教务处的工作,可使学院教职工减轻工作压力,比较系统地对、教务教学上的各项服务和信息进行管理。本系统是针对学生成绩管理进行设计的,主要用户为
12、学校教务管理老师,但学生也可参与对自己信息的核对确认。主要采用的开发工具是JSP和MYSQL。在开发过程中利用面向对象的程序思想和严格按照软件工程的开发过程来进行分析和设计。本系统所要完成以下几个主要功能,其中有学生成绩管理、学生基本信息管理等等,实现对学生基本信息和成绩进行录入、修改、删除、查询等操作。系统基本满足了学生成绩管理的功能需要,确实为学校对学生的管理提供了便利。本系统界面友好、操作简单,对学生基本情况和成绩加快了查询速度、加强了管理,使各项管理更加规范化。关键词: 模块化,数据库,数据库管理系统Abstract The management system of students
13、achievement is mainly applied in part of teaching management of all kinds of universities. It is applied in administration section to arrang curriculum , students achievement and so on , in order to account students achievement so quickly that enhance work efficience. Meanwhile, the system can inqui
14、re achievement and information of students in order to get some useful information.timely , thus ,it can gaves some help to administration section and alleviate work pressure of academic staffs and manage all kinds of sevices and informations in syslematically. The system is designed for management
15、of students achievement. It is mostly used by teacher whom work in administration section. It is sometimes used by student whom want to check his information. Mainly USES the development tools are JSP and MYSQL .The mainly foundation must to be accomplished in the management system of students achie
16、vement as follows: management of students achievement , management of students basic information and so on .Of course, the system can be aimed at achievement and basic information of student to modify or delete or inquire records. The system content with foundation of managment of students achieveme
17、nt in basically,it provides converience with school to manage student . The interface is provided by system is friendly , and the operation is simple . To achievement and basic information of students , it speeds up for inquring . Strengthen management and molkes all kinds of management more standar
18、dlize. In a words , the system has compatibitily and is suited for most people .Keywords:modularize, database , DBMS目 录摘 要.1第一章 选课的目的与意义.4 1.1 概述.4 1.2 课题来源、目的与意义.4第二章 系统的开发技术及主要构架.7 2.1 开发技术的选择.7 2.2 项目开发的工具.7 2.3 数据库的连接.11第三章 需求分析.13 3.1 功能分析.13 3.2 流程分析.14 3.3系统概念模型描述. 16 3.4 数据库设计.20第四章 系统的设计与实现
19、.24 4.1 管理员模块功能.24 4.2 教师模块功能.37 4.3 学生模块功能.45总 结.53参考文献.54致 谢.551.选题的目的和意义1.1 概述本管理系统主要内容是学生成绩管理,其中有学生成绩管理,学生基本情况管理等等。在开发过程中,注意使其符合操作的业务流程,并力求系统的全面性、通用性,使得本系统能适用于各类大学院校。在开发方法的选择上,选择了生命周期法与原型法相结合的方法,遵循系统调查研究、系统分析、系统设计和系统实施四个主要阶段进行设计,而在具体的设计上,采取了演化式原型法,随着用户的使用及对系统了解的不断加深,对某一部分或几部分进行重新分析、设计、实施。在开发工具的选
20、择上,我使用了 JSP及MYSQL关系数据库开发工具, 在短时间内建立系统应用原型。然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成一个满意的可行系统。本文以学校管理信息系统建设中的成绩管理子系统的开发为背景,论述了管理信息系统的概念、结构及系统开发的基本原理和方法,全文共分为概述、系统分析、系统总体设计、详细设计、开发总结、致谢、参考文献、附录等。1.2 课程来源、目的与意义学院在教学这一部分主要是由教务处对课程、对学生、对学生成绩进行合理地安排以及统筹计划,以便让教务处以最短的工作时间内把学生的成绩核算出来,提高教务处的办事效率。同时,能够随时对学生基本信息、学生成绩进行各种查询
21、,以便及时很好地对需要了解的信息得到相应的反馈,能有效的帮助教务处的工作,可使学院教职工减轻工作压力。利用成绩管理系统对学生的成绩进行合理管理,实现学生成绩的录入、编辑、删除等功能,也可以实现成绩的排序、检索等。它将成为教务处老师的一个很好的帮手。本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。本系统能在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,该系统的完成将具有以下几点重要的意义:(1)系统具有较强的实用性、可靠性和适用性,同时也具有一定的先进性。(2)对各个数据库能进行动态管理,有效的防止了数据的混乱。(3)能够按照
22、用户选择的不同的条件进行简单查询和复合查询。(4)能够对查询结果进行分类汇总,实现报表打印。(5)并且注意到了数据的安全性,具有数据备份和恢复的功能。(6)简化了用户的操作过程,尽量减少用户的工作量。2 系统的开发技术及主要架构2.1开发技术的选择合理的选择开发技术,对于网站开发的完成情况有着非常重要的影响。要开发一个网站,首先要选择一个动态网页开发技术。当前比较流行的动态网页开发技术有JSP、ASP、PHP。它们的特性比较如表3-1所示:表2-1 asp/jsp/php比较表技术名称ASPJSPPHP对数据库的支持好好好开发难易度容易容易较难使用平台Windows9X/NTWindows/U
23、NIXUNIX安全性不好好不好对组件的支持支持支持不支持执行方式解释执行编译之后执行解释执行跨平台不好好好这三种都是在传统的HTML代码中,利用HTML标签的扩展,构成页面。不难看出,JSP的综合实力是最强的,尤其是在安全性和跨平台性两个方面,比其他的两种技术都要好,因此,最后我们选择基于Java的JSP技术作为动态网页的开发技术。2.2 项目开发的工具本系统采用MyEclipse8.6+MySQL5.1.53+tomcat6.0.30开发2.2.1 MyEclipe简介MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse是对
24、Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。在结构上,MyEclipse的特征可以被分为7类: 1. JavaEE模型 2. WEB开发工具 3. EJB开发工具 4. 应用程序服务器的连接器 5. JavaEE项目部署服务 6. 数据库服务 7. MyEclipse整合帮助 对于以上每一种功能上的类别,在Eclipse中都
25、有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。2.2.2 MySql简介MySQL名字的来历MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足
26、之处,如规模小、功能有限(MySQL Cluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。2.2.3 PowerDesigner简介PowerDesigner是一个功能强大而使用简单工具集,提供了一个复杂的交互环境,支持开发生命周期的所有阶段,从处理流程建模到对象和组件的生成。PowerDesigner产生的模型和应用可以不断地增长,适应并随着你的组织的变化而变化。PowerDesigner系列产品提供了一个完整的建模解决方案,业务
27、或系统分析人员,设计人员,数据库管理员DBA和开发人员可以对其裁剪以满足他们的特定的需要;而其模块化的结构为购买和扩展提供了极大的灵活性,从而使开发单位可以根据其项目的规模和范围来使用他们所需要的工具。PowerDesigner灵活的分析和设计特性允许使用一种结构化的方法有效地创建数据库或数据仓库,而不要求严格遵循一个特定的方法学。PowerDesigner提供了直观的符号表示使数据库的创建更加容易,并使项目组内的交流和通讯标准化,同时能更加简单地向非技术人员展示数据库和应用的设计。 PowerDesigner不仅加速了开发的过程,也向最终用户提供了管理和访问项目的信息的一个有效的结构。它允许
28、设计人员不仅创建和管理数据的结构,而且开发和利用数据的结构针对领先的开发工具环境快速地生成应用对象和数据敏感的组件。开发人员可以使用同样的物理数据模型查看数据库的结构和整理文档,以及生成应用对象和在开发过程中使用的组件。应用对象生成有助于在整个开发生命周期提供更多的控制和更高的生产率。 2.2.4 Tomcat简介Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得
29、到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。 Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样
30、认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服
31、务器。2.3 数据库的连接本系统采用JDBC连接方式。JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问I
32、nformix数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。 Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它
33、数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。 Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用途的机制。 JDBC 扩展了 Java 的功能。例如,用 Java 和 JDBC API 可以发布含有 applet 的网页,而该 applet 使用的信息可能来自远程数据库。企业也可以用 JDBC 通过 Intranet 将所有职员连到一个或多个内部数据库中(即使这些职员所用的
34、计算机有 Windows、 Macintosh 和UNIX 等各种不同的操作系统)。随着越来越多的程序员开始使用Java 编程语言,对从 Java 中便捷地访问数据库的要求也在日益增加。 MIS 管理员们都喜欢 Java 和 JDBC 的结合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务, Java 和JDBC 可为外部客户提供获取信息更新的
35、更好方法。package msc.dbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class DataBaseConnection private static String DBDRIVER=com.mysql.jdbc.Driver ;private static String DBURL=jdbc:mysql:/localhost:3306/
36、msc?characterEncoding=gbk ;private static String DBUSER=root ;private static String DBPASSWORD= ;private static Connection conn=null ;public Connection getConnection() try Class.forName(DBDRIVER) ;conn = DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD) ; catch (Exception e) System.out.println(vv
37、+e.getMessage();return conn ;public void close() try this.conn.close() ;catch (Exception e) 3 需求分析3.1 功能分析经过前期的深入调查和研究,总结出该系统需要完成的一些具体功能,分析如下:管理员管理 能够完成管理员对教师的信息管理(教师信息查询、信息修改、增加信息、信息删除)、学生管理(学生信息查询、选课查询、学生信息修改、学生信息删除)、课程管理(课程信息查询、课程管理),以及查看、回复和删除留言的功能。教师管理 能够完成开设课程、信息查询、成绩提交、密码修改的功能。学生管理 能够完成个人信息查询
38、、选择课程、密码修改、留言的功能。图3.1 功能模块图3.2流程分析3.2.1 系统流程只有在教师开设了某一门课程,并且在网上提交成功以后,学生才可以查询到此门课程,并且才可以选定课程,提交成功以后,待考试结束,教师即可对选择自己开设课程的学生录入成绩,并且提交。图3.2 选课系统流程图3.2.2 登录流程登陆的时候会根据用户的用户名进行判断是哪种身份的登录,并以不同的身份登陆后执行不同的功能,具有不同的权限。图3.3 登陆流程图3.3 系统概念模型描述目前,在概念设计阶段实体联系模型是广泛使用的设计工具。3.3.1构成系统的实体型 本系统包括学生、教师、班级三个主要实体。 学生实体型属性有学
39、号、姓名、登录密码。 课程实体型属性有课程编号、课程名称、课程学分。 教师实体性属性有教师编号、教师姓名、登录密码。3.3.2 系统局部E-R图 学生实体型与课程实体型存在选课的联系,一个学生可以选修多门课程,每门课程可以被多个学生选修,所以它们之间存在多对多联系(m:n),如下图所示:图3.4 学生-课程E-R图教师实体型与课程实体型存在属于的关系,一个课程只可属于一个教师,每个教师可以有多个课程,所以教师实体型和课程实体型存在一对多联系(1:n),如下图所示:图3.5 教师-课程E-R图系统的局部E-R图,只反映局部应用实体型之间的联系,但不能从整体上反映实体型之间的相互关系。另外,对于一
40、个较为复杂的应用而言,各部分是由多个分析人员合作完成的,画出的E-R图只能反映各局部应用。各局部E-R图之间可能存在一些冲突和重复的部分。为减少这些问题,必须根据实体联系在实际应用中的语义,进行综合、调整和优化,得到系统的合成优化E-R图,如下图所示:图3.6 系统E-R图3.4 数据库设计得出数据表的各个关系模式后,需要给出是各数据表结构。考虑系统的兼容性及编写程序的方便性,可将关系模式的属性对应为表字段的英文名。同时,考虑到数据依赖关系和数据完整性,需要指出表的主码和外码,以及字段的值域约束和数据类型。数据库名:msc表1 课程表course字段字段名类型长度主键可否为空Con课程编号数值
41、型20是否Cname课程名称文本型50否Credit学分数值型20表2 学生表student字段字段名类型长度主键可否为空Sid学生编号数值型20是否Sname学生姓名文本型50否Smajor专业文本型50Sclass班级数值型20Tcredit总学分数值型20Tcreditjd挂科学分数值型20Ocredit平均学分绩点数值型20Acredit总学分绩点数值型20Egrade课程班级数值型20Majorpm专业排名数值型20Classpm班级排名数值型20Scode登录密码数值型20表3 教师表teacher字段字段名类型长度主键可否为空Tid教师编号数值型20是否Tname教师姓名文本型50否Tcode登录密码数值型20表4 用户表user字段字段名类型长度主键可否为空Id用户名数值型20是否Name用户姓名文本型50否Code登录密码数值型20Kind登录身份数值型20否表5 开设课程表teacher_course字段字段名类型长度主键