毕业设计(论文)-基于CS模式的人事管理系统.doc_第1页
毕业设计(论文)-基于CS模式的人事管理系统.doc_第2页
毕业设计(论文)-基于CS模式的人事管理系统.doc_第3页
毕业设计(论文)-基于CS模式的人事管理系统.doc_第4页
毕业设计(论文)-基于CS模式的人事管理系统.doc_第5页
免费预览已结束,剩余33页可下载查看

下载本文档

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

文档简介

摘要当前电子计算机网络、硬件无论是性能还是可靠性方面足以满足企业管理应用的需要;具有国内自主版权的适用的企业管理应用软件经过二十余年的研制开发应用现已非常成熟;企业领导及员工对计算机应用重要性的认识已大大提高,这些为企业管理信息化提供了有利条件。现在计算机的出现为生产和生活带来了极大的变化,计算机的应用为人们的各项活动开创了一个新的天地,管理信息系统的出现就是一个典型的例子,这几年c/s模式的应用以及面向对象编程的出现更是为mis的发展提供了广阔的空间,而考勤管理是每一个企事业单位所必需的,计算机的出现使员工出勤情况的记录和统计变得十分简单。企业管理水平的提高,必须引进先进的企业管理思想和现代化的管理手段,使企业的产、供、销、人、财、物真正得到合理优化调度,为企业领导决策提供及时可靠依据并提高决策的准确度,提高企业对市场需求情况变化的适应性,达到以最快的速度、最好的质量适应每一个客户的不同要求。强大的 作为开发工具而开发出来的单机版企业人事管理系统,整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成人事管理的全过程。包括 关键词:考勤管理 解决方案 数据安全 快速查询abstractthe electronic computer network, both performance and dependability of hardware are enough to meet the need used in business administration at present; have domestic independent suitable business administration application software of copyright develop and adopt through 20 reseach for one year now already very much ripe; the enterprise leader and the staff understanding that the computer uses importance has already been improved greatly , these have offered the advantage for business administration informationization.the appearance of the computer brings the great change for the production and life now, the application of the computer opens a new world for peoples every activity, the appearance of the management information system is a typical example, c/s mode should with face appearance , target of programming offer the wide space for development of mis especially during these years, and it is essential in every enterprises and institutions that the attendance is managed, the appearance of the computer makes the record and statistics of attendance situations of staff very simple. the improvement of enterprises management level , must introduce the advanced business administration thought and modernized management , make the producing, supplying and selling , manpower, financial resources and material resources of enterprises really optimized the dispatcher rationally, offer the reliable basis and accuracy of improving decision in time for leading decision in enterprises, improve between enterprise and market demand adaptability that situation change, up to at fastest speed, the best quality meets the needs of every customers difference.key word:the package of the database,the solution the data are safe目录摘要01英文摘要02第一章 绪论 1.1 系统的背景和提出041.2 编程语言的选择041.3 开发方法051.4 关系型数据库的实现07第二章 系统分析2.1 可行性分析09 2.2 业务流程调查09 2.3 数据流程分析10第三章 系统设计 3.1 系统目标11 3.2 系统功能结构设计11 3.3 数据库设计12 3.4 输出设计23 3.5 输入设计23第四章 系统实施 4.1 代码设计24 4.2 运行环境29 4.3 条件与限制29结论30致谢31参考文献32第一章 绪论管理信息系统就是我们常说的management information system,在强调管理,强调信息的现代社会中它变得越来越普及。21世纪,随着社会经济的发展和社会的进步,许多经济学家纷纷提出了新的管理理论,随后计算机的飞速发展为管理信息系统的完善奠定了坚实的基础,到现在它是各行各业都广泛应用的计算机系统之一,受人们的高度评价和重视。1.1 系统的背景和提出这几年来c/s模式的应用以及面向对象编程的出现更是为mis的发展提供了广阔的空间,而考勤管理是每一个企事业单位所必需的,计算机的出现使员工出勤情况的记录和统计变得十分简单。实施考勤管理系统,能大大提高员工管理的统一性、准确性和灵活性,大大缩短管理编制周期,合理利用资源,减少因计划不周如停工等造成的损失。考勤系统记录了员工上下班的情况,为工资管理直接提供每个月工作时间的统计结果。同时考勤系统也需要其它系统提供的员工、部门等信息。只有实现了考勤管理,才可以对每个员工的实际情况作一个准确的评价,也是个人工资发放的有效凭证和依据,使得每一个人都能清楚地了解自己的上下班时间情况,公平,公正,公开。1.2 编程语言的选择目前,市场上开发数据库应用的软件工具很多,但是visualbasic以其便捷的所见即所得的界面设计和极其高效的执行代码效率,从众多编程工具中脱颖而出,成为开发管理信息系统的首选。visualbasic加上microsoft access的组合更是应用开发的利器。1.实现菜单选项菜单是程序最重要的特性之一,大多数程序都依赖一个定义良好的菜单使程序易于使用和维护,visual basic也提供了强大的创建菜单功能是程序更加标准。您可以使用visual basic的application wizard也可以使用visual basic 的菜单编辑器建立菜单或者修改已经存在的菜单。 2.实现工具栏coolbar控件与office97种看到的coolbar是类似的。coolbar就是一个可以在窗体上浮动的工具,同时也是其他activex的容器。通过在coolbar中迁入其他空间你局可以向用户提供更好的灵活性和义用性。toolbar 是工具条控件,是实现工具条的主体。其中的按钮可以显示图像和标题,并按功能分组或加入分隔符,还可以围棋设置鼠标停留在其上显示的提示字符。toolbar也是一个控件容器且具有style属性,并可以为其增加下拉按钮和平滑按钮等。选择“工程”下拉菜单中的“部件”选项,显示“部件”对话框。在“控件”选项卡列表中选择“microsoft windows common controls 6.0”后工具相中增加改控件。其属性及对象如下: 1 align属性定义工具条在窗体中的位置2 tooltiptext属性是字符串类型,定义控件的提示字符3 style属性定义按钮外观。4 imagelist属性定义与数据条对应的imagelist控件名,该控件定义工具条按钮显示的图像。5 hotimangelist属性设置一个imagelist控件名,该控件定义按钮获得热点时显示的图像。6 disabledimagelist属性定义工具条按钮无效时显示的图像。创建工具条包括imagelist和toolbar控件imagelist用于为其他控件提供图像库,将imagelist控件加入到工具箱的操作于前述toolbar控件相同。帮助专业水平的软件通常都带有联机帮助功能。无论写出来的程序是要给大量的用户使用,还是仅仅局限于公司内部有限的使用者,我们都应该为用户提供详细的、易于理解的联机帮助文档。微软的help workshop4.0 是一套独立于visual basic 的用来协助我们创建、运行于32位windows 操作系统下的帮助文件的工具。使用它我们可以为我们编写的应用程序生成一组帮助文件。1.3开发方法l 系统要解决的问题:如采取何种方式解决组织管理和信息处理方面的问题,对企业提出的新的管理需求该如何满足等。l 系统可行性研究:确定系统所要实现的目标。通过对企业状况的初步调研得出现状分析的结果,然后提出可行性方案并进行论证。系统可行性的研究包括目标和方案可行性、技术的可行性、经济方面的可行性和社会影响方面的考虑。l 系统开发的原则:在系统开发过程中,要遵循领导参与、优化创新、实用高效、处理规范化的原则。l 系统开发前的准备工作:作好开发人员的组织准备和企业基础准备工作。l 系统开发方法的选择和开发计划的制定:针对已经确定的开发策略选定相应的开发方法,是结构化系统分析和设计方法,还是选择原型法或面向对象的方法。开发计划的制定是要明确系统开发的工作计划、投资计划、进度计划和资源利用计划。管理信息系统开发方法主要有:结构化生命周期开发方法、原型法、面向对象的开发方 法。1.结构化生命周期开发方法目前较为流行的mis开发方法是结构化生命周期开发方法,其基本思想是:用系统的思想和系统工程的方法,按用户至上的原则,结构化、模块化地自上而下对生命周期进行分析与设计。用结构化生命周期开发方法开发一个系统,将这个开发过程划分为5个依次连接的阶段:系统规划阶段:主要任务是明确系统开发的请求,并进行初步的调查,通过可行性研究确定下一阶段的实施。系统规划方法有战略目标集转化法(sst,strategy set transformation)、关键成功因素法(csf, critical success factors)和企业规划法(bsp, business system planning)。系统分析阶段:主要任务是对组织结构与功能进行分析,理清企业业务流程和数据流程的处理,并且将企业业务流程与数据流程抽象化,通过对功能数据的分析,提出新系统的逻辑方案。系统设计阶段:主要任务是确定系统的总体设计方案、划分子系统功能、确定共享数据的组织,然后进行详细设计,如处理模块的设计、数据库系统的设计、输入输出界面的设计和编码的设计等。系统实施阶段:主要任务是讨论确定设计方案、对系统模块进行调试、进行系统运行所需数据的准备、对相关人员进行培训等。系统运行阶段:主要任务是进行系统的日常运行管理,评价系统的运行效率,对运行费用和效果进行监理审计,如出现问题则对系统进行修改、调整。这五个阶段共同构成了系统开发的生命周期。结构化生命周期开发方法严格区分了开发阶段,非常重视文档工作,对于开发过程中出现的问题可以得到及时的纠正,避免了出现混乱状态。但是,该方法不可避免地出现开发周期过长、系统预算超支的情况,而且在开发过程中用户的需求一旦发生变化,系统将很难作出调整。1.原型法原型法在系统开发过程中也得到不少应用。原型法的基本思想是系统开发人员凭借自己对用户需求的理解,通过强有力的软件环境支持,构造出一个实在的系统原型,然后与用户协商,反复修改原型直至用户满意。原型法的应用充分利用了最新的软件工具,使系统开发效率大为提高。2.面向对象系统开发方法面向对象(oo,object oriented)的系统开发方法,是近年来受关注的一种系统开发方法。面向对象的系统开发方法的基本思想是将客观世界抽象地看成是若干相互联系的对象,然后根据对象和方法的特性研制出一套软件工具,使之能够映射为计算机软件系统结构模型和进程,从而实现信息系统的开发。1.4关系型数据库的实现access2000 就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。access 的优点在于它能使用数据表示图或自定义窗体收集信息。数据表示图提供了一种类似于 excel 的电子表格,可以使数据库一目了然。另外,access 允许创建自定义报表用于打印或输出数据库中的信息。access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。access 是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。如上所述,access 作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。二者的结合(dba)微软的jet数据库引擎提供了与数据库打交道的途径,我们是通过它以及visual basic 来访问数据库并对其进行各种操作。visual basic、access以及其他微软的软件产品都是通过共用jet数据库引擎,从而给用户提供了丰富的数据类型。data 控件在数据库中的信息与将信息显示给用户看的visual basic程序之间架起了一座桥梁。我们可以设置data控件的各个属性,告诉它要调用那个数据库的哪个部分。缺省情况下,data控件根据数据库中的一个或多个数据表建立一个dynaset-type(动态集合)类型的记录集合。一个记录集合是动态的也就意味着,当原来的数据表中的容改变了以后,该记录集合中的记录也会随之改变。data控件还提供了用来浏览不同记录的各种跳转按钮。将data控件放置在窗体中之后,我们还必须在该控件与要处理的数据库之间建立联系。visual basic应用程序基本的构建块是用户所创建的对象,每一个对象都具有一些特性和行为(属性、事件和 方法)。开发人员可以最有效利用所创建的每一个对象。使用应用程序具有可通用性可说扩展性和强有力的功能。目前,大多数主流数据库管理系统把用户数据表示为关系。现在把关系看作数据表。表的列包含域或属性,表的行包含对应业务环境中的实体的记录。并非所有的关系都同样符合要求,有些关系比其它关系更结构化一些。第二章描述了一个用以产生良好结构关系的过程,称作规范化。为了对比结构差的关系和结构好的关系之间的差别,以本文所设计的图书管理系统中的图书和图书借阅者关系为例来说明,假若设计关系r1(借书证号,姓名,性别,身份编号,身份证,联系电话,图书编号,图书名称,图书类别,作者,出版社,出版日期,备注,价格,数量);这个关系的问题出在它有关于两个不同主题的数据,就是图书借阅者和图书。用这种方式构成的关系在进行修改时,会出现问题。因为一个图书借阅者可能借阅多本书,如果某个图书借阅者的某个字段(如联系电话)出现变更,它所借阅的图书记录(可能多个)也就必须变化,这是不好的。因此数据用两个关系表示更好。现在如果某图书借阅者改变了它的联系电话,只有关系(表)user的对应行需要改变。当然,要想产生一个,显示图书名称及其借阅者联系电话的报表,就需要将这两个表的行结合起来。结果表明,将关系分别存储,在生成报表的时候将它们结合起来,比把它们存储在一个合成的表中更好。数据库是自描述的,这就意味着它自身包含了它的结构的描述,这种结构的描述称作元数据。因为dbms产品是用来存储和操纵表的,所以大多数产品把元数据以表的形式存储,有时称作系统表。这些系统表存储了数据库中表的情况,指出每一个表中有多少列,那一列是主关键字,每一列的数据类型的描述,它也存储索引、关键字、规则和数据库结构的其他部分。在表中存储元数据不仅对dbms是有效的,对用户也是方便的,因为他们可以使用与查询用户数据同样的查询工具来查询元数据。visual basic应用由一系列对象组成,包括有函数、菜单、函数、结构和数据窗口、用户对象、用户事件等等,对象中又包含若干控件如命令按钮、单行编辑器等这些对象和控件都可在许多应用中重复使用。第二章 系统分析2.1 可行性分析可行性分析的编写目的是:说明该软件开发项目的实现在技术、经济和社会条件方面的可行性;评述为了合理地达到开发目标而可能选择的各种方案;说明并论证所选定的方案。为了能够实现系统,必须进行这样的分析才可以,所以我就分析了企业中的考勤情况以及管理上的可行性,从而达到即定目标。我国社会主义市场经济逐步形成,随着我国加入wto的成功,企业不仅参与国内市场竞争,同时要面对国际市场竞争,竞争会越来越激烈。市场竞争的主要方面是质量、价格、交货期和服务,这些都迫切要求企业迅速改善和加强产品设计现代化手段,改善和加强企业经营管理,以适应市场残酷竞争的需要。当前internet国际互联网用户正以迅猛之势成倍增长,电子商务正越来越成为最快捷、最方便的全球贸易方式。这一切都要求企业必须尽快建设好计算机网络平台,加入到国际互联网的行列。逐步实现企业供需链和电子商务管理。本系统的开发目的就是管理好企业的考勤,所以问题就是如何管理好,和管理上是否可行,管理信息系统的性质决定了它能够胜任管理的重要角色,能够像人那样管理好企业,并且能够为企业创造经济效益,带来利润,以事半功倍的效果达到人们的目的,最终实现企业的效益成倍提高,资金增加,所以经济上完全可行。2.2 业务流程调查(业务流程图)不同的企业对考勤管理的流程和要求不尽相同。一般而言,考勤管理系统需要具备以下的功能:上下班时间的设定。上下班时间相对固定,可保存在客房端的设置文件中。员工出入单位的情况记录。出入情况主要由考勤机来记录,但是需要设置人工添加的功能,以备特殊情况的处理。请假,加班和出差情况的记录。每个月底进行报表的打印。考勤管理系统主要是对考勤进行统筹管理,以便于为企业中其他系统提供了基本的物资信息。通过详细记录每一个员工的出勤情况达到对企业的个人进行管理,所以本系统的流程与功能就是如此,对每一个人负责,对整个企业负责。2.3 数据流程分析记录出勤时间员工出勤记录考勤员上下班时间安排请假出差记录管理人员第三章 系统设计3.1 系统目标在企业网络系统总体规划指导下,根据企业当前的迫切需求与急待解决的瓶颈问题以及企业将来的发展要求,在尽快产生效益的同时,为企业今后的发展打下良好的基础。充分管理好企业的员工考勤,保证数据库的运行安全,可靠,速度快,维护容易,发挥好管理信息系统的重要作用。3.2 系统功能结构设计员工管理系统职工信息 职工出勤情况打印信息上下班签到请假情况考勤情况值班情况 基本操作查询职工3.3 数据库设计1.数据库的发展数据库处理在信息系统的研究中一直是非常重要的主题,然而,近年来,随着world wide web(www)的猛增及internet技术的迅速发展,使得数据库技术之时成为最热门技术之一。数据库技术能使internet应用超越具有早期应用特点的简单的发布。同时,internet技术提供了一种向用户发布数据库内容的标准化的访问方法。这些技术没有脱离经典数据库技术的要求。它们只是加重了数据库技术的重要性。数据库的设计和开发及包括艺术有包括工程。理解用户的需求,然后,把它们转变为有效的数据库设计是一个艺术过程。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用,是一个工程过程。数据库的目的是帮助人们跟踪事务。经典的数据库应用涉及诸如订单、顾客、工作、员工、学生、电话之类的项,或其它数据量较大、需要密起关注的事务。最近,由于数据库的普及,数据库技术已经被应用到了新的领域,诸如用于internet的数据库或用于公司内联网的数据库。数据库也被越来越多地应用于生成和维护多媒体应用程序上。计算机的数据处理应用,首先要把大量的信息以数据形式存放在存储器中。存储器的容量、存储速率直接影响到数据管理技术的发展。从1956年生产出第一台计算机到现在,存储器的发展,为数据库技术提供了良好的物质基础。使用计算机以后,数据处理的速度和规模,无论是相对于手工方式,还是机械方式,都有无可比拟的优势。通常在数据处理中,计算是比较简单的而数据的管理却比较复杂。数据管理是指数据的收集、整理、组织、存储、维护、检索、传送等操作,这部分操作是数据处理业务的基本环节,而且是任何数据处理业务中必不可少的共有部分。数据管理技术的优劣,将直接影响数据处理的效率。数据管理技术的发展,与硬件(主要是外存)、软件、计算机应用的范围有密切的联系。数据管理技术的发展经过三个阶段:人工管理阶段、文件系统阶段和数据库阶段。人工管理阶段和文件系统阶段都有着相当多的缺陷,诸如数据冗余性 ,数据不一致性以及数据联系弱等等。也正是由于这些原因,促使人们研究新的数据管理技术,从而产生了数据库技术。20世纪60年代末发生的三件大事,层次模型ims系统的推出、关于网状模型dbtg报告的发表以及关于关系模型论文的连续发表标志着数据管理技术进入数据库阶段。进入70年代以后,数据库技术得到迅速发展,开发了许多有效的产品并投入运行。数据库系统克服了文件系统的缺陷,提供了对数据更高级更有效的管理。当进入数据库阶段后,随着数据管理规模一再扩大,数据量急剧增加,为了提高效率,开始时,人们只是对文件系统加以扩充,在应用文件中建立了许多辅助索引,形成倒排文件系统。但这并不能最终解决问题。在20世纪60年代末,磁盘技术取得重要进展,具有数百兆容量和快速存取的磁盘陆续进入市场,成本也不高,为数据库技术的产生提供了良好的物质条件。2.数据库阶段的特点(1)减少数据的重复(redundancy can be reduced)当在一个非数据库系统当中,每一个应用程序都有属于他们自己的文件,由于无法有系统建立的数据,因此常常会造成存储数据的重复与浪费。例如:在一家公司当中,人事管理程序与工资管理程序或许都会使用到职员与部门的信息或文件,而我们可以运用数据库的方法,把这两个文件整理起来,以减少多余的数据,过度地占用存储空间。(2)避免数据的不一致(inconsistency can avoid)本项的特色,可以说是延伸前项的一个特点,要说明这样的一个现象,我们可以从下面这个实例来看:若是在同一家公司当中,职员甲在策划部门工作,且职员甲的记录同时被存放在数据库的两个地方,而数据库管理系统却没有对这样重要的情况加以控制,当其中一条数据库被修改时,便会造成数据的不一致,但是,对于一个健全的数据库管理系统而言,将会对这样的情况加以控制,但有时并不需要刻意消除这种情形,应当视该数据库的需求与效率来决定。 (3)数据共享(data shared)对于数据共享的意义,并不是只有针对数据库设计的应用程序,可以使用数据库中的数据,对于其他撰写好的应用程序,同样可以对相同数据库当中的数据进行处理,进而达到数据共享的目的。(4)强化数据的标准化(standard can be enforced)由数据库管理系统,对数据做出统筹性的管理,对于数据的格式与一些存储上的标准进行控制,如此一来,对于不同的环境的数据交换(data interchange)上将有很大的帮助,也能提高数据处理的效率。(5)实践安全性的管理(security restriction can be applied)通过对数据库完整的权限控制,数据库管理者可以确认所有可供用户存取数据的合法途径渠道,并且可以事先对一些较重要或关键性的数据进行安全检查,以确保数据存取时,能够将任何不当损毁的情形降至最低。(6)完整性的维护(integrity can be maintained)所谓完整性的问题,就是要确认某条数据在数据库当中,是正确无误的。正如(2)所述,若是无法控制数据的不一致性,便会产生完整性不足的问题,所以,我们会发现,当数据重复性高的时候,数据不完整的情形也会增加,当然,若是数据库的功能完整,将会大大地提高数据完整性,也会增加数据库的维护能力与维护简便性。(7)需求冲突会获得平衡(conflicting requirements can be balance)在一个较大型的企业当中,用户不同的需求,往往会造成系统或数据库在设计上的困扰,但是一个合适的数据库系统,可以通过数据库管理员的管理,将会有效地整理各方面的信息,对于一些较重要的应用程序,可以适时地提供较快速的数据存取方法与格式,以平衡多个用户在需求上的冲突。上述七个方面构成了数据库系统的主要特征。这个阶段的程序和数据间的联系可用下图表示: 3. 数据库技术从文件系统发展到数据库系统是信息处理领域的一个重大变化。在文件系统阶段,人们关注的中心问题是系统功能的设计,因而程序设计处于主导地位,数据只起着服从程序需要的作用。在数据库方式下,信息处理观念已为新体系所取代,数据占据了中心位置。数据结构的设计成为信息系统首先关心的问题,而利用这些数据的应用程序设计则退居到以既定的数据结构为基础的外围地位。目前世界上已有数百万个数据库系统在运行,其应用已经深入到人类社会生活的各个领域,从企业管理、银行业务、资源分配、经济预测一直到信息检索、档案管理、普查统计等。并在通信网络基础上,建立了许多国际性的联机检索系统。我国20世纪90年代初在全国范围内装备了12个以数据库技术为基础的大型计算机系统,这些系分布在邮电、计委、银行、电力、铁路、气象、民航、情报、公安、军事、航天和财税等行业。数据库技术还在不断的发展,并且不断地与其它计算机技术相互渗透。数据库技术与网络通信技术相结合,产生了分布式数据库系统。数据库技术与面向对象技术相结合,产生了面向对象数据库系统。在数据库技术中有四个名词,其概念应该分清。(1)数据库(database,db):db是统一管理的相关数据的集合。db能为各种用户共享,具有最小冗余度,数据间联系密切,而又有较高的数据独立性。(2)数据库管理系统(database management system,dbms):dbms是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问db的方法,包括db的建立、查询、更新及各种数据控制。dbms总是基于某种数据模型,可以分为层次型、网状型、关系型和面向对象型dbms。(3)数据库系统(database system,dbs):dbs是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。(4)数据库技术:这是一门研究数据库的结构、存储、管理和使用的软件学科。数据库技术是操作系统的文件系统基础上发展起来的。而dbms本身要在操作系统的支持下才能工作。数据库不仅用到数据结构的知识,而且丰富了数据结构的内容。在关系数据库中要用到集合论、数理逻辑的理论。因此,数据库技术是一门综合性较强的学科。4. 数据库模型从20世纪50年代中期开始,计算机的应用由科学研究部门逐步扩展到企业、行政部门。至60年代,数据处理成为计算机的主要应用。数据库技术作为数据管理技术,是计算机软件领域的一个重要分支,产生于60年代末。现已形成相当规模的理论体系和实用技术。模型是对现实世界的抽象。在数据库技术中,我们用模型的概念描述数据库的结构与语义,对现实世界进行抽象,表示实体类型及实体间联系的模型称为“数据模型” 。目前广泛作用的数据模型可分为两种类型。一种是独立于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息结构,这类模型称为“概念数据模型” 。要领模型用于建立信息世界的数据模型,强调其语义表达功能,应该概念简单、清晰,易于用户理解,它是现实世界的第一层抽象,是用户和数据库设计人员之间进行交流的工具。这一其中著名的模型是“实体联系模型” 。另一种数据模型是直接面向数据库的逻辑结构,它是现实世界的第二层抽象。 这类模型涉及到计算机系统和数据库管理系统,又称为“结构数据模型” 。例如,层次、网状、关系、面向对象等模型。这类模型有严格的形式化定义,以便于在计算机系统中实现。(1)层次模型。用树型结构表示实体类型及实体间联系的数据模型。树的结点是记录类型,每个非根结点有且只有一个父结点。上一层记录类型和下一层记录类型间联系是1n联系。层次模型的特点是记录之间的联系通过指针实现,查询效率较高。但层次模型有两个缺点:一是只能表示1n联系,虽然有多种辅助手段实现了mn联系,但都较复杂,用户不易掌握,二是由于树型结构层次顺序的严格和复杂,引起数据的查询和更新操作也很复杂,因此,编写应用程序也很复杂。(2)网状模型。用有向图结构表示实体类型及实体间联系的数据模型。1969年dbtg报告提出的数据模型是网状模型的主要代表。有向图中的结点是记录类型,有向边表示从箭尾一端的记录类型到箭头一端的记录类型间联系是1n联系。网状模型的特点:记录之间联系通过指针实现,mn联系也容易实现(每个mn联系可拆成两个1n联系),查询效率较高。网状模型的缺点是编写应用程序比较复杂,程序员必须熟悉数据库的逻辑结构。由于层次系统和网状系统的应用程序编制比较复杂,因此,从20世纪80年代中期起,其市场已被关系系统所取代。但是使用这两种模型建立起的许多数据库仍然在正常运转,只是在外层加了个关系数据库语言的接口。网状模型有许多成功的产品,20世纪70年代的产品大部分网状系统,例如,honeywell公司的ids/、hp公司的image/3000、burroughs公司的dms、umivac公司的dms1100、cullinet公司的idms、cimcom公司的total等(3)关系模型。关系模型的主要是用二维表格结构表达实体集,用外键表示实体间联系。关系模型是由若干个关系模式组成的集合。关系模式相当于前面提到的记录类型,它的实例称为关系,每个关系实际上是一张二维表格。关系模型和层次、网状模型的最大判别是用关键码而不是用指针导航数据,表格简单用户易懂,编程时并不涉及存储结构,访问技术等细节。关系模型是数学化模型。sql语言是关系数据库的标准化语言,已得到了广泛的应用。20世纪70年代对关系数据库的研究主要集中在理论和实验系统的开发方面。80年代初才形成产品,但很快得到广泛的应用和普及,并最终取代了层次、网状数据库产品。现在市场上典型的关系dbms产品有db2、oracle、sybase、informix和微机型产品foxpro、access等。关系模型和网状、层次模型的最大区别是:关系模型用表格数据而不是通过指针链来表示和实现实体间联系。关系模型的数据结构简单、易懂。只需用简单的查询语句就可对数据库进行操作。关系模型是数学化的模型,可把表格看成一个集合,因此集合论、数理逻辑等知识可引入到关系模型中来。关系模型已是一个成熟的有前途的模型,已得到广泛应用。(4)面向对象模型。目前,关系数据库的使用已相当普遍,但是,现实世界中仍然存在着许多含有复杂数据结构的应用领域,例如,cad数据、图形数据等,而关系模型在这方面的处理能力就显得力不从心。因此,人们需要更高级的数据库技术来表达这类信息。面向对象的概念最早出现在程序设计语言中,随后迅速渗透到计算机领域的每一个分支。面向对象数据库是面向对象概念与数据库技术相结合的产物。面向对象模型能完整地描述现实世界的数据结构,具有丰富的表达能力,但模型相对较复杂,涉及的知识面也广,因此面向对象数据库尚未达到关系数据库那样的普及程度。5. 数据库体系结构数据库的体系结构分三级:内部级(internal),概念级(conceptual)和外部级(external)。这个三级结构有时也称为“三级模式结构”,或“数据抽象的三个级别”,最早是在1971年通过的dbtg报告中提出,后来收入在1975年的美国ansi/sparc报告中。虽然现在dbms的产品多种多样,在不同的操作系统支持下工作,但是大多数系统在总的体系结构上都具有三级模式的结构特征。从某个角度看到的数据特性称为“数据视图”(data view)。外部级最接近用户,是单个用户所能看到的数据特性。单个用户使用的数据视图的描述称为“外模式”。概念级涉及到所有用户的数据定义,是全局的数据视图。全局数据视图的描述称为“概念模式”。内部级最接近于物理存储设备,涉及到实际数据存储的结构。物理存储数据视图的描述称为“内模式”。数据库的三级模式结构是数据的三个抽象级别。它把数据的具体组织留给dbms去做,用户只要抽象地处理数据,而不必关心数据在计算机中的表示和存储,这样就减轻了用户使用系统的负担。三级结构之间往往差别很大,为了实现这三个抽象级别的联系和转换,dbms在三级结构之间提供两个层次的映象(mappings):外模式/模式映象,模式/内模式映象。此处模式是概念模式的简称。6 数据的独立性由于数据库系统采用三级模式结构,因此系统具有数据独立性的特点。在数据库技术中,数据独立性是指应用程序和数据之间相互独立,不受影响。数据独立性分成物理数据独立性和逻辑数据独立性两级。(1)物理数据独立性如果数据库的内模式要进行修改,即数据库的存储设备和存储方法有所变化,那么模式/内模式映象也要进行相当的修改,使概念模式尽可能保持不变。也就是对内模式的修改尽量不影响概念模式,当然,对于外模式和应用程序的影响更小,这样,我们称数据库达到了物理数据独立性。(2)逻辑数据独立性如果数据库的概念模式要进行修改,譬如增加记录类型或增加数据项,那么外模式/模式映象也要进行相应的修改,使外模式尽可能保持不变。也就是对概念模式的修改尽量不影响外模式和应用程序,这样,我们称数据库达到了逻辑数据独立性。现有关系系统产品均提供了较高的物理独立性,而对逻辑独立性的支持尚有欠缺,例如,对外模式的数据更新受到限制等。7.范式建立起一个良好的数据指标体系,是建立数据结构和数据库的最重要的一环。一个良好的数据指标体系是建立db的必要条件,但不是充分条件。我们完全可以认为所建指标体系中的一个指标类就是关系数据库中的一个基本表,而这个指标类下面的一个个具体指标就是这个基本表中的一个字段。但如果直接按照这种方式建库显然还不能算最佳。对于指标体系中数据的结构在建库前还必须进行规范化的重新组织。在数据的规范化表达中,一般将一组相互关联的数据称为一个关系(relation),而在这个关系下的每个数据指标项则被称为数据元素(data element),这种关系落实到具体数据库上就是基本表,而数据元素就是基本表中的一个字段(field)。规范化表达还规定在每一个基本表中必须定义一个数据元素为关键字(key),它可以唯一地标识出该表中其它相关的数据元素。在规范化理论中表是二维的,它有如下四个性质:在表中的任意一列上,数据项应属于同一个属性(如图中每一列都存放着不同合同记录的同一属性数据)。 表中所有行都是不相同的,不允许有重复组项出现(如图中每一行都是一个不同的合同记录)。在表中,行的顺序无关紧要(如图中每行存的都是合同记录,至于先放哪一个合同都没关系)。 在表中,列的顺序无关紧要,但不能重复(如图中合同号和合同名谁先谁后都没关系,但二者不可重复或同名)。 在对表的形式进行了规范化定义后,数据结构还有五种规范化定义,定名为规范化模式,称为范式。在这五种范式中,一般只用前三种,对于常用系统就足够了。而且这五种范式是“向上兼容”的,即满足第五范式的数据结构自动满足一、二、三、四范式,满足第四范式的数据结构自动满足第一、二、三范式,依此类推。第一范式(first normal form,简称1st nf)就是指在同一表中没有重复项出现,如果有则应将重复项去掉。这个去掉重复项的过程就称之为规范化处理。在本文所讨论的开发方法里,1st nf实际上是没有什么意义的。因为我们按规范化建立的指标体系和表的过程都自动保证了所有表都满足1st nf。 第二范式(second normal form,简称 2nd nf)是指每个表必须有一个(而且仅一个)数据元素为主关键字(primary key),其它数据元素与主关键字一一对应。例如,在图l9.7中如果我们将合同号定义为主关键字(其它数据元素中的记录数据都有可能重名,故不能作为主关键字),故只要知道了一个合同记录的合同号,就可以唯一地在同一行中找到该合同的任何一项具体信息。通常我们称这种关系为函数依赖(functional dependence)关系。即表中其它数据元素都依赖于主关键字,或称该数据元素唯一地被主关键字所标识。第三范式(third normal form,简称 3rd nf)就是指表中的所有数据元素不但要能够唯一地被主关键字所标识,而且它们之间还必须相互独立,不存在其它的函数关系。也就是说对于一个满足了 2nd nf的数据结构来说,表中有可能存在某些数据元素依赖于其它非关键宇数据元素的现象,必须加以消除。为防止数据库出现更新异常、插入异常、删除异常、数据冗余太大等现象,关系型数据库要尽量按关系规范化要求进行数据库设计。8.sql简介用户对数据库的使用,是通过数据库管理系统提供的语言来实现的。不同的数据库管理系统提供不同的数据库语言。关系数据库管理系统几乎都提供关系数据库标准语言sql。sql 的全称是structured query language,即结构化查询语言。sql语句可以从关系数据库中获得数据,也可以建立数据库、增加数据、修改数据。1986年ansi采用sql语言作为关系数据库系统的标准语言,后被国际化标准组织(iso)采纳为国际标准。sql语言使用方便、功能丰富、简洁易学,是操作数据库的工业标准语言,得到广泛地应用。例如关系数据库产品db2、oracle等都实现了sql语言。同时,其它数据库产品厂家也纷纷推出各自的支持sql的软件或者与sql的接口软件。这样sql语言很快被整个计算机界认可。sql语言是一种非过程化语言,它一次处理一个记录集合,对数据提供自动导航。sql语言允许用户在高层的数据结构上工作,而不对单个记录进行操作。sql语言不要求用户指定数据的存取方法,而是使用查询优化器,由系统决定对指定数据存取的最快速手段。当设计者在关系表上定义了索引时,系统会自动利用索引进行快速检索,用户不需知道表上是否有索引或者有什么类型的索引等细节。sql语言可以完成许多功能,例如: 查询数据 在数据库表格中插入、修改和删除记录 建立、修改和删除数据对象 控制对数据和数据对象的存取 确保数据库的一致性和完整性等sql查询数据查询是关系运算理论在sql语言中的主要体现,select 语句是sql查询的基本语句,当我们在对一个数据库进各种各样的操作时,使用的最多的就是数据查询,在以sql为基础的关系数据库中,使用的最多的就是select查询语句。select语句的完整句法如下:select 目标表的列名或列表达式序列from 基本表和(或)视图序列where 行条件表达式group by 列名序列having 组条件表达式order by列名 ascdeac我在select语句中还使用了大量的保留字和通配符以进行各种各样的条件查询。在系统中有大量的查询按钮,其使用了大量的查询语句,而且这些查询语句大部分使用的是模糊查询,所以大量的使用了模式匹配符like(判断值是否与指定的字符通配格式相符)。在

温馨提示

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

评论

0/150

提交评论