版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、本文源码索取,请联系qq:68661508课程作业管理系统xx大学xx学院毕业设计(论文)目 录摘 要abstract引 言1.课题背景及可行性概述1.1选题背景1.2课题的可行性分析1.3 研究方法1.3.1 数据库应用系统开发简介1.3.2 数据库应用系统开发背景2开发环境与工具语言2.1 c#.net的简介2.2 c#的特点2.3 sql语言基础2.3.1 sql简介2.3.2 sql中的数据类型2.3.3 sql数据更新3系统需求分析3.1系统设计目的分析3.2总体结构设计3.3系统功能设计4数据库的设计与实现4.1数据库表的设计4.2 数据库表结构4.3 e-r模型5.系统的详细设计
2、与实现5.1系统登陆模块设计5.2系统登陆窗口5.3主界面的设计与实现5.3.1密码找回界面与编码5.3.2教师发布修改作业的界面与编码5.3.3教师批量下载作业的界面与编码5.3.4学生上传作业的界面与编码5.4系统测试结 论致 谢参考文献摘 要随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。根据现在学校学生作业管理的状况,设计成一个能提供对学生作业查看、查看成绩及教师查看作业、发布成绩、修改作业、布置新作业的系统,本
3、系统不但要方便,而且要具有很大的实践性和可行性,大量简化管理人员的工作量,能为学校管理提供方便。论文主要探讨“课程作业管理系统”的理论基础和设计思想,根据系统的开发过程和系统的功能实现为主线来论述数据库管理软件的开发过程。主要阐述以软件工程理论作为系统开发的理论基础,以专业数据库开发语言作为实现手段的数据库管理软件的开发过程分析和理论研究。本系统以c#.net和 sql server为开发工具,通过后台数据库的建立与设置,软件界面的设计与实现,程序的编写与调试等几个阶段来完成对课程作业管理系统的开发。本论文详细地介绍了开发系统的具体步骤,以及应用的技术,以配图例的方式详尽说明,并在文中对一些源
4、程序作了详细的解释。关键词:c#.net、课程作业、管理系统、sql serverabstract as information technology in the management of an increasing depth and a wide range of applications, the implementation of management information system has been gradually mature technically. management information system is an evolving new disciplin
5、e, a unit of any development in order to survive, it is necessary to efficient internal activities to organize themselves organically, it is necessary to establish its own characteristics and to adapt the management of information systems. schools operating under the current management situation, de
6、signed to provide an operational view of the students to see teachers to view operating results and to publish results, modify operations and layout of the new operating system, the system must not only be convenient, but also of great practicality and feasibility of simplifying the management of a
7、large number of staff, to facilitate the school management. thesis focused on the course management system operations, the theoretical basis and design idea, according to the system development process and the realization of the function of the system to describe the main line of database management
8、 software development process. mainly on the software engineering theory as the theoretical basis for system development, professional database development language as a means of database management software development process of analysis and theoretical research. the system to c #. net and sql ser
9、ver for the development of tools, through the establishment of a database background and settings, software interface design and implementation, and debugging procedures, such as the preparation of several stages to complete work on the course management system. this paper describes in detail the sp
10、ecific steps to develop systems and technologies to legend the way with detailed descriptions and in the source text of some detailed explanation. keywords: c #. net, course operations, management systems, sql server引 言随着互联网技术的迅猛发展,网络给人们带来了很多便利,但是在目前的高校教学系统中,学生提交作业和教师批改作业都得靠纸质交流,或者是用单一的上传,拷贝等方法交流。这样
11、的传统作业提交批改方式已经过时,而且也无法满足现在高效率的时代。因此设计开发了此系统。该系统完全可以淘汰纸质作业的形式,首先可以方便学生查看作业的批改情况以便于更好的学习,其次可以在教师发布标准答案之后查看标准答案方便和自己的作业进行对比学习。开发此系统的目的在于方便教师和学生的互动交流,大大提高学生提交作业,教师批改作业的效率。作业提交系统主要目的是解决学生提交作业和教师批改作业都得靠纸质交流,或者是用单一的上传,拷贝等方法交流不方便的问题。系统分了管理员模块和学生模块,学生提交作业采用在线提交方式,根据选择教师来选择作业,在教师公布标准答案之后查看作业标准答案。系统具有操作简便,界面友好的
12、特性。管理员能够对用户信息和权限进行方便的修改和管理。论文详细阐述了本系统的开发背景、研究意义,开发环境以及系统的需求分析,详细说明了数据库的设计,以及系统各功能的实现。作业提交系统有着很好的应用前景,用来代替传统的作业提交方式,实现在线作业提交方式的网络化管理。随着计算机技术和网络技术的发展,它的功能将会得到不断的发展和完善。1.课题背景及可行性概述1.1选题背景作业提交系统2.0是基于b/s结构,在.net平台上使用c#与microsoft sql 2000开发的,主要目的是解决学校机房管理上机作业的问题。因为传统的对学生作业管理是在服务器上建立一个ftp服务器,然后对学生用户设置一个专门
13、的帐号,只允许对作业进行上传,然后学生将作业上传到服务器里对应的班级文件夹下面,传统方式无法解决的问题有:不能防止学生乱上传作业,不能防止学生找错班级文件夹,不能对作业进行限制如大小,类型,上传时间等,教师布置作业要通过黑板写字,教师打分之后只能记在本子上,不能通过局域网发布出来让学生看,教师下载作业必须到服务器上拷贝。而这套系统正是出于这个目的,为了解决上面的问题而设计的。系统对于复杂的问题都采用程序的方式解决了。因此在选择管理系统时,最好选择操作方便、功能适合的管理系统。开发一个系统,需要从下面两个方面考虑:第一、关于信息收集(1)明确(学生)课程作业管理系统要实现的功能,如课程作业系统主
14、要功能用于实现学生查看作业及查看成绩和个人资料的管理;(2)明确(教师)课程作业管理系统要实现的功能,如课程作业系统主要功能用于实现教师查看作业及发布绩、删除作业、修改作业、布置新作业和个人资料、修改密码的管理;(3)从课程作业管理员那里了解基本数据信息;(4)根据了解到的信息,分析并设计系统的基本结构;(5)分析系统中所需界面的功能及所需元素,并初步确定各界面间的数据接口;(6)创建数据库、设计系统界面并编写功能代码。第二、关于软件构架(1)课程作业管理系统教师对学生作业的查看和发布;(2)课程作业管理系统管理对添加专业、添加用户、添加班级。1.2课题的可行性分析(1)技术可行性-本系统在w
15、indows server 2003测试运行。windows server 2003是成熟专业的做服务器的操作系统,而sql server更是一个功能强大的数据库服务器,可以做数据存储仓库,c#是微软.net架构中首推语言,具有高稳定性高执行性,以上三种出自同一家公司,兼容性强能最大限度的发挥系统性能。(2)经济可行性-本系统为学生开发设计,具有无成本的优势,同时开发项目为会员管理系统,可为各类公司进行会员管理,简单方便、节省人力,降低运营成本,在经济上也完全可行。1.3 研究方法1.3.1 数据库应用系统开发简介在数据库应用系统开发之前,对开发数据库的基本概念应当了解,对数据库的结构、开发数
16、据库应用程序的步骤、开发体系及方法都应当有相当清晰的了解和认识。数据库应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。数据库技术在计算机软件邻域研究中一直是非常重要的主题,产生于60年代,30多年来数据库技术得到了迅速发展,并已形成较为完整的理论体系和一大批实用系统。并且,近年来,随着world wide web(www)的猛增及internet技术的迅速发展,使得数据库技术成为最热门技术之一1.3.2 数据库应用系统开发背景随着21世纪的到来,人们更深
17、切地感受到了计算机在生活和工作中的作用越来越重要,越来越多的职业需要具有计算机的应用技能。掌握计算机是职业的需要,更是事业发展的需要。信息在社会和经济的发展中所起的作用越来越为人们所重视。信息资源的开发利用水平已成为衡量一个国家综合国力的重要标志之一。在计算机的三大主要应用领域(科学计算、数据处理与过程控制)中,数据处理的比重约占70%左右。计算机作为信息处理的工具,为适应数据处理需求的迅速提高,满足各类信息系统对数据管理的要求,在文件系统的基础上发展起了数据库系统。数据库技术产生于60年代末,70年代初期,其主要目的是有效地管理和存取大量的数据资源。数据库技术主要研究如何存储、使用和管理数据
18、,是计算机数据管理技术发展的最新阶段。数据库存储的是通用化的相关数据集合,它不仅包括数据本身,而且包括数据之间的联系。30多年来,数据库在理论上、实现技术上均得到很大的发展,研制出许多商用数据库管理系统,使得计算机应用渗透到各行各业的各类管理工作中。现在,数据库技术已成为计算机领域里最重要的技术之一,是软件学科的一个独立分支。近年来,数据库技术和计算机网络技术的发展相互渗透、相互促进,已成为当今计算机领域内发展迅速、应用广泛的两大领域。数据库系统是数据处理的核心机构,管理信息系统、办公自动化系统、决策支持系统等都是使用了数据库管理系统或数据库技术的计算机应用系统。数据库方法原本是针对事务处理申
19、大量数据管理需求的,但是它的应用范围不断扩大,不仅应用于事务处理,并且进一步应用到情报检索、人工智能、专家系统、计算机辅助设计等,涉及到非数值计算各方面的应用。应用范围的扩大又进一步促进了数据库技术的深入发展,可以说数据库系统已成为计算机应用系统的重要组成部分之一。微机数据库系统以其开发成本低、简单易学、方便用户等优点,迅速得到了推广。计算机应用人员只有了解数据库系统的基本原理,掌握数据库设计的基础理论,熟悉数据库管理系统特点,才能开发出好的数据库应用系统。2开发环境与工具语言2.1 c#.net的简介c#.net 是一个已编译的基于 .net 的环境,可以用任何与 .net 兼容的语言(包括
20、 visual basic .net、c# 和 jscript .net.)创作应用程序。另外,任何 c#.net 应用程序都可以使用整个 .net framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。c#.net 可以无缝地与 wysiwyg html 编辑器和其他编程工具(包括 microsoft visual studio .net)一起工作。这不仅使得 web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 web 页的 gui 和完全集成的调试支持。微软为c#.net设计了这样一
21、些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出web应用,满足计算向web转移的战略需要。2.2 c#的特点1)增强的性能。c#.net 是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,c#.net 可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。 2)世界级的工具支持。c#.net 框架补充了 visual studio 集成开发环境中的大量工具箱和设计器。wysiwyg 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。 3)威力和灵活性。由于 c#.
22、net 基于公共语言运行库,因此 web 应用程序开发人员可以利用整个平台的威力和灵活性。.net 框架类库、消息处理和数据访问解决方案都可从 web 无缝访问。c#.net 也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到 c#.net 时保留基于 com 的开发中的现有投资。 4)简易性。c#.net 使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,c#.net 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似 visual basic 的简单窗体处理模型中处理事件。另外
23、,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。 5)可管理性。c#.net 采用基于文本的分层配置系统,简化了将设置应用于服务器环境和 web 应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。此 零本地管理 哲学也扩展到了 c#.net 框架应用程序的部署。只需将必要的文件复制到服务器,即可将 c#.net 框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。 6)可缩放性和可用性。c#.net 在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到
24、c#.net 运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。 7)自定义性和扩展性。c#.net 随附了一个设计周到的结构,它使开发人员可以在适当的级别 插入 代码。实际上,可以用自己编写的自定义组件扩展或替换 c#.net 运行库的任何子组件。实现自定义身份验证或状态服务一直没有变得更容易。 8)安全性。借助内置的 windows 身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。2.3 sql语言基础2.3.1 sql简介sql是英文structured query language的缩写,意思为结构化查询语
25、言。sql语言的主要功能就是同各种数据库建立联系,进行沟通。按照ansi(美国国家标准协会)的规定,sql被作为关系型数据库管理系统的标准语言。sql语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的关系型数据库管理系统,如oracle, sybase, microsoft sql server, access等都采用了sql语言标准。虽然很多数据库都对sql语句进行了再开发和扩展,但是包括select, insert, update, delete, create,以及drop在内的标准的sql命令仍然可以被用来完成几乎所有的数据库操作。而sq
26、l server 是一个关系数据库管理系统。它最初是由microsoft sybase 和ashton-tate三家公司共同开发的,于1988 年推出了第一个os/2 版本。在windows nt 推出后,microsoft与sybase 在sql server 的开发上就分道扬镳了,microsoft 将sql server 移植到windows nt系统上,专注于开发推广sql server 的windows nt 版本。sybase 则较专注于sql server在unix 操作系统上的应用。同时sql server 是一个全面的、集成的、端到端的数据解决方案,它为企业中的用户提供了一个
27、安全、可靠和高效的平台用于企业数据管理和商业智能应用。sql server 2005 为it专家和信息工作者带来了强大的、熟悉的工具,同时减少了在从移动设备到企业数据系统的多平台上创建、部署、管理及使用企业数据和分析应用程序的复杂度。 通过全面的功能集、和现有系统的集成性、以及对日常任务的自动化管理能力,sql server 2000 为不同规模的企业提供了一个完整的数据解决方案。sql server 2000 是microsoft 公司推出的sql server 数据库管理系统,该版本继承了sql server 7.0 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相
28、关软件集成程度高等优点,可跨越从运行microsoft windows 98 的膝上型电脑到运行microsoft windows 2000 的大型多处理器的服务器等多种平台使用。2.3.2 sql中的数据类型简要描述一下sql中的五种数据类型:字符型,文本型,数值型,逻辑型和日期型。字符型(varchar vs char)varchar型和char型数据的这个差别是细微的,但是非常重要。他们都是用来储存字符串长度小于255的字符。当你建立自己的站点时,你会发现使用varchar型字段要比char型字段方便的多。使用varchar型字段时,你不需要为剪掉你数据中多余的空格而操心。varchar
29、型字段的另一个突出的好处是它可以比char型字段占用更少的内存和硬盘空间。当你的数据库很大时,这种内存和磁盘空间的节省会变得非常重要文本型(text)使用文本型数据,你可以存放超过二十亿个字符的字符串。当你需要存储大串的字符时,应该使用文本型数据。注意文本型数据没有长度,而上一节中所讲的字符型数据是有长度的。一个文本型字段中的数据通常要么为空,要么很大。一旦你向文本型字段中输入了任何数据(甚至是空值),就会有2k的空间被自动分配给该数据。除非删除该记录,否则你无法收回这部分存储空间。数值型(int vs smallint vs tinyint)sql支持许多种不同的数值型数据。你可以存储整数
30、int 、小数 numeric、和钱数 money。他们的区别只是字符长度:int型数据的表数范围是从-2,147,483,647到2,147,483,647的整数smallint 型数据可以存储从-32768到32768的整数tinyint 型的字段只能存储从0到255的整数,不能用来储存负数numeric为了能对字段所存放的数据有更多的控制,你可以使用numeric型数据来同时表示一个数的整数部分和小数部分。numeric型数据使你能表示非常大的数比int型数据要大得多。一个numeric型字段可以存储从-1038到1038范围内的数。numeric型数据还使你能表示有小数部分的数。当定义
31、一个numeric型字段时,你需要同时指定整数部分的大小和小数部分的大小。如:muneric(23,0)一个 numeric型数据的整数部分最大只能有28位,小数部分的位数必须小于或等于整数部分的位数,小数部分可以是零。money vs smallmoney你可以使用 int型或numeric型数据来存储钱数。但是,专门有另外两种数据类型用于此目的。如果你希望你的网点能挣很多钱,你可以使用money型数据。如果你的野心不大,你可以使用smallmoney型数据。money型数据可以存储从-922,337,203,685,477.5808到922,337,203,685,477.5807的钱数。
32、如果你需要存储比这还大的金额,你可以使用numeric型数据。smallmoney型数据只能存储从-214,748.3648到214,748.3647 的钱数。同样,如果可以的话,你应该用smallmoney型来代替money型数据,以节省空间。逻辑型(bit)如果使用复选框( checkbox)从网页中搜集信息,你可以把此信息存储在bit型字段中。bit型字段只能取两个值:0或1。创建好一个表之后,不能向表中添加 bit型字段。如果打算在一个表中包含bit型字段,必须在创建表时完成。日期型(datetime vs smalldatetime)一个 datetime型的字段可以存储的日期范围是
33、从1753年1月1日第一毫秒到9999年12月31日最后一毫秒。如果你不需要覆盖这么大范围的日期和时间,你可以使用smalldatetime型数据。它与datetime型数据同样使用,只不过它能表示的日期和时间范围比datetime型数据小,而且不如datetime型数据精确。2.3.3 sql数据更新 使用数据库的目的是为了有效地管理数据,而数据的插入、删除和修改则是必不可少的一个功能。在本系统中就大量地使用了数据插入、删除和修改这三种操作,现做一个简单地介绍。(1)数据插入往数据库的基本表中插入数据使用的是insert语句,其方式有两种:一种是元组值的插入,另一种是查询结果的插入。在本系统
34、中使用的是前一种方式,其句法如下:insert into 基本表名(列表名)values(元组值)(2)数据删除 往数据库的基本表中删除数据使用的是delete语句,其句法如下: delete from 基本表名 where 条件表达式 在些作一点说明,删除语句实际上是“select * from 基本表名 where 条件表达式”和delete操作的结合,每找到一个元组,就把它删除。此外,delete语句只能从一个基本表中删除元组,where子句中条件可以嵌套,也可以是来自几个基本表的复合条件。(3)数据修改 当需要修改基本表中元组的某些列值时,可以用update语句实现,其句法如下: up
35、date基本表名 set列名=值表达式,列名=值表达式 where条件表达式3系统需求分析3.1系统设计目的分析本课题要实现的是课程作业提交系统,在设计该系统时,应尽可能的便于用户操作。系统分了管理员、教师、学生用户,管理员须要的操作只是添加专业,添加班级,添加管理员或教师用户都是通过网页的形式展示出来。而教师无须向以前那样,只需要发布作业,对作业的要求进行限制,不必去服务器上建文件夹来存放你的作业,并且程序自动创建目录。下载作业也只须要点一下就会将作业全部打包下载回来,在局域网内的任何一台计算机都可以进行各种操作。学生则再也不会将作业上传错,上传到别的班级中,也不允许上传非法的文件,对一次未
36、上传完成的作业也可以先上传后下节课再下载回来接着做。系统用程序的方式解决了那些非常复杂的操作,比如对文件夹的创建等,所有的角色只需要简单的几步操作就可以完成,非常简单实用。3.2总体结构设计系统的概要设计中最重要的就是系统的模块化。模块化是指解决一个复杂问题时自项向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。 将系统划分为多个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块的划分不能是任意的,应尽量保持其独立性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口
37、简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。通过对整个系统的规划分析,对数据的具体要求的分析,以及对系统功能的综合考虑,提出一个基本的总体结构框架。房屋中介管理系统的层次划分为几个方面:用户界面,数据缓冲,数据库,输出等。1)用户界面层次:距离用户最近的层次,以图形化界面显示给用户,便于用户进行基本操作,用户可以在这里输入数据,修改数据,删除数据,设定选配标准,设定查询条件等。用户对系统的所有输入内容在此层次上操作。2)数据缓冲层次:在这个层次中,用户所做的修改尚未提交到数据库中,而是保存在一个临时缓冲区中。此时,所有操作是由系统本身操作,包括在数据缓冲区内
38、增加信息,修改信息,删除信息等,也包括执行选配过程,判断查询条件的合法性等。这一层次中,系统主要执行提交数据库之前的所有工作,确保提交数据的合法性和准确性,尽量减少数据库错误。3)数据库层:主要操作在数据库中执行,主要工作是:将缓冲区的数据存入数据库,执行查询语句等。由于数据是经过缓冲区检查的,所以可以大大减少数据库的非法操作,减少数据出错的情况,查询时的非正常情况大大减少。输出层:在这个层次中,不需要进行数据库操作和用户输入操作,这个层次的主要工作是把结果显示给用户,包括查询结果,统计图,错误信息,提示信息等。本系统主要实现的基本功能如下图3.1所示:图3.1系统功能模块3.3系统功能设计1
39、.学生用户页面学生用户页面主要完成上传、下载作业,查看成绩及作业的功能,如图3.2所示:图3.2学生用户管理模块2.教师用户页面:教师用户页面主要完成发布删修作业,发布修改成绩、打包下载作业的功能。如图3.3所示:图3.3教师用户管理模块3.管理员用户页面:管理员用户页面主要完成添加专业、添加班级、添加用户。如图3.4所示:图3.4管理员用户模块4数据库的设计与实现4.1数据库表的设计完成系统功能模块的分析,已经可以很清晰的描述出数据之间的联系。根据系统功能模块,数据库表设计原则如下:1进行规范化设计,尽可能地减少数据冗余和重复2合理的数据库表的设计应该是在满足需求的前提下,使数据的重复量最小
40、,就尽量按照关系数据库系统理论方法去设计一个数据库,减少数据的冗余。3.结构设计与操作设计相结合在设计数据库结构时,有时为了编程实现的简捷和思路的清晰,往往故意增加一些冗余数据。这虽然有悖于传统的关系数据库理论,但是考虑到选择的机器型号和档次等因素,如果增加的冗余不会明显增加存储空间和降低处理效率,并且对编程实现有很大帮助,往往可以采用这种方法。数据结构的相对稳定性,可以作为新、旧系统转换的依据。无论采用何种方法或手段去处理日常事务,都应该能完成相应的功能,决不会因为采用了计算机而丢失了必要的功能,或彻底改变了原有的工作流程和模式。计算机系统的建成是建立在原系统充分调研的基础上的,它既不能脱离
41、原系统的大框架,也不是简单的重复和替代。所以数据库表结构设计应保证数据的相对稳定,这样才能考虑在新的数据结构下的业务处理方式。4.2 数据库表结构1)admin(用户信息)表主键:学号编号 notnull说明:用户信息表主要用于保存学号、姓名等信息,该表结构如表4.1所示:表4.1用户信息结构表字段名数据类型长度允许空备注xuehaovarchar15学号xingmingvarchar20用户名 pwvarchar20密码pw_wentivarchar50提示问题pw_daanvarchar50提示答案emailvarchar20电子邮箱denglushuint4登陆数2)class(班级信息
42、表)主键:班级名称 notnull说明:班级信息表主要用来保存班级名称、代号等信息,该表结构如表4.2所示:表4.2班级信息结构表字段名数据类型长度允许空备注class_namevarchar50班级名称class_daihaovarchar15班级代码3)student(学生信息表)主键:学号 notnull说明:学生信息表主要用于保存学生信息等详细信息。如下4.3表:表4.3学生信息结构图字段名数据名称长度允许空备注xuehaovarchar15学号xingmingvarchar20姓名pwvarchar30密码pw_wentivarchar50提示问题pw_daanvarchar50提示
43、答案emailvarchar20电子邮件denglushuint4登陆数banjidaihaovarchar15班级代号4)teacher(教师信息表)主键:教师编号 notnull说明:教师信息主表用于保存教师编号、姓名名称等信息。如下表4.4所示:表4.4 教师信息结构图字段名数据类型长度允许空备注xuahaoint4编号xingmingvarchar20姓名pwvarchar30密码pw_wentivarchar50提示问题pw_daanvarchar50提示答案emailvarchar20电子邮件denglushuint4登陆数zuoyeshuint4作业数5)zhuanye(专业信息
44、表)主键:专业编号 notnull说明:专业信息表主要用于保存专业信息,如下表4.5所示:表4.5专业信息表字段名数据类型长度允许空备注ad_idint4专业编号mingchengvarchar30专业名称6)zuoye(作业信息表)主键:作业编号 notnull说明:作业信息表主要用于保存作业编号、文章等信息。如下表4.6所示:表4.6作业信息结构图字段名数据类型长度允许空备注ad_idint4编号zy_titlevarchar3标题zy_contenttext16内容zy_xingmingvarchar10姓名zy_xuehaoint4学号zy_datedatetime8日期zy_luji
45、ngvarchar50路径zy_wenjianvarchar10文件zy_daxiaoint4文件大小zy_classvarchar15班级zy_chengjitext16成绩4.3 e-r模型在概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定dbms的限制。在系统设计的开始,首先考虑的是如何用数据模型来数据库的结构与语义,以对现实世界进行抽象。目前广泛使用的数据模型可分为两种类型,一种是独立于计算机系统的“概念数据模型”,如“实
46、体联系模型”;另一种是直接面向数据库逻辑结构的“结构数据模型”。 在系统的数据库设计中,先要对系统分析得到的数据字典中的数据存储进行分析,分析各数据存储之间的关系,然后才能得出系统的关系模式。可以采用er图的方法来进行数据结构分析。er设计方法是一种通过er图来描述现实世界信息结构的db设计方法。er图由实体、属性、联系三部分组成。在本系统中采用“实体联系模型”(er模型)来描述数据库的结构与语义,以对现实世界进行第一次抽象。er模型直接从现实世界抽象出实体类型及实体间联系,然后用er图来表示数据模型。它有两个明显的优点:接近于人的思维,容易理解;与计算机无关,用户容易接受。er图是直观表示概
47、念模型的工具,它有四个基本成分:矩形框,表示实体类型(考虑问题的对象)。菱形框,表示联系类型(实体间的联系)。 椭圆形框,表示实体类型和联系类型的属性。对于关键码的属性,在属性名下划一横线。直线,联系类型与其涉及的实体类型之间以直线连接。 在得到全局er模式后,为了提高数据库系统的效率,还应进一步依据处理需求对er模式进行优化。一个好的全局er模式,除能准确、全面地反映用户功能需求外,还应满足下列条件:实体类型的个数要尽可能的少;实体类型所含属性个数尽可能少;实体类型间联系无冗余。图4.7实体间关系e-r图图4.7管理员信息关系e-r图图4.8学生信息关系e-r图图4.9教师信息关系e-r图5
48、.系统的详细设计与实现5.1系统登陆模块设计用户登陆界面的主要功能是保护系统数据的安全,对多用户使用的系统不仅需要进行密码检验,也需要进行用户名检验。下面将逐步介绍“用户登陆”界面中各控件的属性设置以及如何编写功能实现代码。protected void btn_click(object sender, eventargs e) try string userid, password, sqlstring; string connstring = server=(local);user id=sa;pwd=;database=aa; /aa是数据库名 sqlconnection conn = n
49、ew sqlconnection(connstring);/连接字符串 userid = txtuserid.text.trim(); password = txtpassword.text.trim(); sqlstring = select * from user info where userid= + userid + and password= + password + ;/user info 是数据表 sqlcommand cmd = new sqlcommand(sqlstring, conn); /创建sqlcommand cmd.commandtype = commandty
50、pe.text; conn.open();/打开数据库连接 sqldatareader dr = cmd.executereader(); /定义类并获取用户的登陆信息 if (dr.read() sessionuserid = userid; sessionpassword = password; response.redirect(login.aspx); else txtuserid.text = ; txtpassword.text = ; /response.write(alert(用户名或密码错误); dr.close(); conn.close(); 5.2系统登陆窗口上一节已对
51、系统登陆模块进行了一些介绍,并给出了本系统实现登录时所需代码。这一节就介绍系统登录窗口的设计和所能实现的功能。系统登录主要完成的是:当用户进行登录的时候,系统分析用户名及密码是否正确,为防止用户的错误操作,应设置错误处理页面。在登录操作中,一般发生的错误有:用户输入了错误的用户名或密码;或用户直接单击了【登录】按钮。用户登录页面的设计效果如图5.1所示:图5.1 登陆界面利用javascript编写检测用户输入信息是否合法的函数,并通过单击【确定】按钮调用该函数,判断用户名或密码是否为空,如果为空,系统将给予提示。当用户输入合法信息后,提交该表单,完整代码如下:function check(m
52、yform)if (myform.username.value=) /判断用户名是否为空,并弹出提示对话框alert(请输入用户名!);myform.username.focus();return;if(myform.pwd.value=) /判断密码是否为空,并弹出提示对话框alert(请输入密码!);myform.pwd.focus();return;myform.submit();在登录页面时,当用户提交了登录资料后,就由表单action属性指定的文件在服务器端对这些资料进行验证。它的工作主要是判断用户的登录的用户名和密码是否正确。完成这些工作,就必须从连接储存用户数据库中取出相关的信息
53、记录。如果记录验证无误,就通过response对象的redirect方法,将用户登录的页面传到客户端的浏览器上;如果用户输入了错误的用户名或密码,就通过的response对象的write方法弹出错误提示。在开始编写程序之前,首先使用session来存储用户的相关信息,并与客户端保持联系。本页使用session(ulogin)以存储在数据库中的标识符作为信息记载,并以判断这个值是否为空来判断用户是否登录。表单提交到处理页后会验证用户登录的身份,完整代码如下:/引入数据库联接的命名空间 using system.data; using system.data.sqlclient; /生成联接 sqlconnection objsqlconnection = new sqlconnection(server=.;database=你的数据库名字;uid=sa;pwd=sa2005); /打开联接 objsqlconnection.open(); /sql语句 string searchsql=select count(*) from 你的表名 where id=xx;/这句sql语句的意思就是统计一下有没有id=xx的记录
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石药控股集团招聘面试题及答案
- 2025年湖南省怀化市单招职业适应性测试模拟测试卷附答案解析
- 2025年安徽黄梅戏艺术职业学院单招职业倾向性测试模拟测试卷附答案解析
- 2025年邵阳工业职业技术学院单招职业适应性考试模拟测试卷附答案解析
- 2025年大理农林职业技术学院单招职业技能测试模拟测试卷附答案解析
- 2024年广东南华工商职业学院单招职业倾向性测试题库附答案解析
- 2024年云南现代职业技术学院单招职业适应性考试模拟测试卷附答案解析
- 2023年广州体育职业技术学院单招职业技能考试题库附答案解析
- 2025年云南特殊教育职业学院单招职业倾向性测试模拟测试卷附答案解析
- 2023年四川信息职业技术学院单招职业倾向性考试模拟测试卷附答案解析
- 2025云南省人民检察院招聘22人笔试考试备考题库及答案解析
- 2026年安全生产管理培训课件与事故预防与应急处理方案
- 2026年长沙民政职业技术学院单招职业技能考试题库及答案详解一套
- 医学检验质控课件
- 中心静脉导管堵塞原因及预防 护理讲课比赛
- ERAS理念在肝切除治疗肝癌中的应用
- 【超星尔雅学习通】日本近现代文学选读网课章节答案
- GB/T 40047-2021个体防护装备运动眼面部防护滑雪镜
- 2020年新编市场营销16版复习重点全书名师精品资料
- 兽药营销课程资源库兽药产品策略课件
- 2-管道仪表流程图PID
评论
0/150
提交评论