数据库管理系统总体设计样本.doc
《数据库管理系统总体设计样本.doc》由会员分享,可在线阅读,更多相关《数据库管理系统总体设计样本.doc(49页珍藏版)》请在咨信网上搜索。
图书仓库管理系统 本系统关键完成对图书仓库库存管理,包含图书入库、出库、库存,职员信息,供给商信息和密码管理等六个方面。系统能够完成对各类信息浏览、查询、添加、删除、修改、报表等功效。 系统关键是入库、库存和出库三者之间联络,每一个表修改全部将联动影响其它表,当完成入库或出库操作时系统会自动地完成库存修改。查询功效也是系统关键之一,在系统中即有单条件查询和多条件查询,也有正确查询和模糊查询,系统不仅有静态条件查询,也有动态生成条件查询,其目标全部是为了方便用户使用。系统有完整用户添加、删除和密码修改功效,并含有报表打印功效。 系统采取Microsoft Office中Access 来设计数据库,并使用目前优异开发工具—Delphi 6.0 ,它有着最为灵活数据库结构,对数据库应用有着良好支持。 论文关键介绍了本课题开发背景,所要完成功效和开发过程。关键说明了系统设计关键、设计思想、难点技术和处理方案。 关键字:数据库,SQL语言,Delph 6,数据库组件,仓库管理 目 录 第一章 引言 ……………………………………………………………………………1 1.1 课题起源 ……………………………………………………………………1 1.2 开发工具选择 ……………………………………………………………2 1.3 所做关键工作 ……………………………………………………………3 第二章 数据库概论 ……………………………………………………………………4 2.1 数据库发展 ………………………………………………………………4 2.1.1 数据库发展 …………………………………………………………4 2.1.2 数据库阶段特点 ……………………………………………………5 2.1.3 数据库技术 ……………………………………………………………6 2.2 数据库理论基础 ……………………………………………………………7 2.2.1 数据库模型 ……………………………………………………………7 2.2.2 数据库体系结构 ……………………………………………………10 2.2.3 数据独立性 ………………………………………………………11 2.2.4 范式 …………………………………………………………………11 2.3 SQL语言基础 ……………………………………………………………13 2.3.1 SQL介绍 ……………………………………………………………13 2.3.2 SQL查询 ……………………………………………………………13 2.3.3 SQL数据更新 ………………………………………………………14 第三章数据库开发工具 ……………………………………………………………16 3.1 Delphi 6.0 介绍 ……………………………………………………………16 3.2 Delphi 6.0 控件 ……………………………………………………………17 3.2.1 ADO数据访问组件 …………………………………………………17 3.2.2 数据控制类DataControl ……………………………………………18 3.2.3 数据访问类DataAccess ……………………………………………18 3.2.4 SQL语言在Delphi中应用 ………………………………………19 3.3 Access 介绍 ………………………………………………………………21 第四章 系统总体设计 ………………………………………………………………23 4.1 系统需求分析 ……………………………………………………………23 4.2 系统概要设计 ……………………………………………………………25 4.2.1 系统结构设计 ………………………………………………………25 4.2.2 数据库设计 …………………………………………………………27 4.2.2.1 ER图设计 ……………………………………………………27 4.2.2.2 数据库表格设计………………………………………………29 4.3系统具体设计………………………………………………………………34 第五章 系统应用程序设计 …………………………………………………………37 5.1 系统窗体模块组成…………………………………………………………37 5.2 数据模块窗体设置…………………………………………………………38 5.3 主窗体功效模块实现……………………………………………………39 5.4 入库、出库窗体模块实现………………………………………………43 5.5 查询功效实现……………………………………………………………51 5.6 系统登陆窗体模块实现…………………………………………………52 5.7 用户管理功效实现………………………………………………………54 5.7.1 用户管理主窗体 ……………………………………………………54 5.7.2 密码修改窗体模块实现 …………………………………………54 5.7.3 用户注册窗体模块实现 …………………………………………55 5.7.4 用户注销窗体模块实现 …………………………………………57 结束语 …………………………………………………………………………………59 致谢 ……………………………………………………………………………………60 参考文件 ………………………………………………………………………………61 第一章 引 言 §1.1 课题起源 伴随社会经济快速发展和科学技术全方面进步,计算机事业飞速发展,以计算机和通信技术为基础信息系统正处于蓬勃发展时期。伴随经济文化水平显著提升,大家对生活质量及工作环境要求也越来越高。书籍做为人类精神食粮,在现代社会中越来越受到重视,大量书籍出现在市场上,大家有了多种多样不一样选择。和此同时,为了管理大量图书,图书仓库也大量出现,仓库管理问题也就提上了日程。伴随图书大量增加,其管理难度也越来越大,怎样优化仓库日常管理也就成为了一个大众化课题。 在计算机飞速发展今天,将计算机这一信息处理利器应用于仓库日常管理已是势必所然,而且这也将为仓库管理带来前所未有改变,它能够带来意想不到效益,同时也会为企业飞速发展提供无限潜力。采取计算机管理信息系统已成为仓库管理科学化和现代化关键标志,它给企业管理来了显著经济效益和社会效益。关键表现在: 极大提升了仓库工作人员工作效率,大大降低了以往入出存步骤繁琐,杂乱,周期长弊端。 基于仓库管理全方面自动化,能够降低入库管理、出库管理及库存管理中漏洞,能够节省不少管理开支,增加企业收入。 仓库管理操作自动化和信息电子化,全方面提升了仓库管理水平。 伴随中国改革开放不停深入,经济飞速发展,企业要想生存、发展,要想在猛烈市场竞争中立于不败之地,没有现代化管理是万万不行,仓库管理全方面自动化、信息化则是其中极其关键部分。为了加紧仓库管理自动化步伐,提升仓库管理业务处理效率,建立仓库管理系统已变得十分心要。 入库、库存、出库还是现在企业图书仓库管理常规基础模式,即使,最近又出现了很多新管理模式,如:基于零库存思想沃尔玛特管理方法,但这些新思想在中国大部分企业管理中还是难以实现。所以怎样设计好仓库管理系统,尽可能地降低仓库管理反复性和低效性就成为目前最为关键问题。图书仓库管理关键是入库、库存和出库之间联络,怎样处理好三者之间关系是系统最为关键部分。另外,职员信息和供给商信息管理也是仓库管理中一个必不可少部分,它提供着和入库和出库相关地部分信息,使得整个系统愈加完整,愈加实用。 经过对仓库管理日常工作具体调查,搜集了大量资料,从系统结构组织,功效实现,技术要求和可行性等多方面进行考虑,认为本课题是一个适应现今图书仓库管理需求计算机信息管理系统,含有一定实际开发价值和使用价值。 §1.2 开发工具选择 自Java诞生以来,伴随Internet技术普及和应用需求改变,以第四代语言为主应用开发产品发生了较大改变,它们不仅已成为大家开发应用开发工具,而且很多产品已发展成为一个强有力应用开发环境。这些新型开发工具通常以一个集成软件包形式提供给开发人员,被称为Studio(工作室)或Suite(程序组)。比如,微软Visual Studio 6.0,Borland企业Delphi 6.0等数据库辅助开发工具。 现在,市场上能够选购应用开发产品很多,流行也有数十种。现在在中国市场上最为流行、使用最多、最为优异可用作企业级开发工具产品有: Microsoft企业Visual Basic 6.0版 Microsoft企业Visual C++6.0版 Borland企业Delphi 6.0版 在现在市场上这些众多程序开发工具中,有些强调程语言弹性和实施效率;有些则偏重于可视化程序开发工具所带来便利性和效率得高,各有各优点和特色,也满足了不一样用户需求。然而,语言弹性和工具便利性是密不可分,只有便利工具,却没有弹性语言作支持,很多特殊化处理动作必需要花费数倍工夫来处理,使得原来所标榜效率提升优点失去了作用;相反,假如只强调程语言弹性,却没有便利工具作配合,会使部分即使很简单界面处理动作,也会严重地浪费程序设计师宝贵时间。 而Delphi是一个很理想选择。Delphi 6 是操作系统中快速应用开发环境最新版本。它也是目前Windows平台上第一个全方面支持最新Web服务快速开发工具。不管是企业级用户,还是个人开发者,全部能够利用Delphi 6 轻松、快捷地构建新一代电子商务应用。Delphi 6 是惟一支持全部新出现工业标准RAD环境,包含XML(扩展标识语言)/XSL(可扩展样式语言),SOAP(简单对象存取协议)和WSDL(Web服务器描述语言)等。 Delphi 6 是可视化快速应用程序开发语言,它提供了可视化集成开发环境,这一环境为应用程序设计人员提供了一系列灵活而优异工具,能够广泛地用于种类应用程序设计。在Delphi 6 集成开发环境中,用户能够设计程序代码、运行程序、进行程序错误调试等,可视化开发方法降低了应用程序开发难度。Delphi基础编程语言是含有面向对象特征Pascal语言,即Object Pascal 。Object Pascal含有代码稳定、可读性好、编译速度快等优点,并将面向对象概念移植到了Pascal语言中,使这种基础语言有了新发展空间。 使用Delphi 6.0 ,我们几乎能够作任何事情,还能够撰写种多种类型应用程序,动态链接库(DLL)、CON、或CORBA对象,CGI/ISAPI程序,Microsoft Back Office应用程序。程序规模小到简单个人数据库应用,大到复杂企业多层次分布式系统,全部能够使用Delphi进行开发,其友好集成开发界面,可视化双向开发模式,良好数据库应用支持高效程序开发和程序运行,备受广大程序开发人员好评。尤其是Delphi对数据库应用强大支持,大大提升了数据库应用软件开发效率,缩短了开发周期,深受广大数据库应用程序设计人员喜爱。Delphi为数据库应用开发人员提供了丰富数据库开发组件,使数据库应用开发功效更强大,控制更灵活,编译后程序运行速度愈加快。 §1.3 本文所做工作 引言部分介绍了本系统课题起源和对数据库开发工具选择。 第二章介绍了数据库发展,关系数据库,数据库体系结构,并系统介绍了SQL语言,为设计和了解应用程序做了铺垫。 第三章系统介绍了Delphi 6.0及其部分控件,SQL语言在Delphi 6.0中应用,和Access等。 第四章是本文主体,根据软件工程要求,从需求分析开始,经过概要设计最终到具体设计,完成对整个系统设计。 第五章依据第四章设计结果利用Access 和Delphi 6.0进行了具体窗体和应用程序设计。 总结部分介绍了设计体会和编程体会,并指出了系统设计中不足和改善方向第二章 数据库概论 §2.1 数据库发展 数据库处理在信息系统研究中一直是很关键专题,然而,多年来,伴随World Wide Web(WWW)猛增及Internet技术快速发展,使得数据库技术之时成为最热门技术之一。数据库技术能使Internet应用超越含有早期应用特点简单公布。同时,Internet技术提供了一个向用户公布数据库内容标准化访问方法。这些技术没有脱离经典数据库技术要求。它们只是加重了数据库技术关键性。 数据库设计和开发及包含艺术有包含工程。了解用户需求,然后,把它们转变为有效数据库设计是一个艺术过程。把设计转变为实际数据库,而且这些数据库带有功效完备、高效能应用,是一个工程过程。 数据库目标是帮助大家跟踪事务。经典数据库应用包含诸如订单、用户、工作、职员、学生、电话之类项,或其它数据量较大、需要密起关注事务。最近,因为数据库普及,数据库技术已经被应用到了新领域,诸如用于Internet数据库或用于企业内联网数据库。数据库也被越来越多地应用于生成和维护多媒体应用程序上。 计算机数据处理应用,首先要把大量信息以数据形式存放在存放器中。存放器容量、存放速率直接影响到数据管理技术发展。从1956年生产出第一台计算机到现在,存放器发展,为数据库技术提供了良好物质基础。 使用计算机以后,数据处理速度和规模,不管是相对于手工方法,还是机械方法,全部有没有可比拟优势。通常在数据处理中,计算是比较简单而数据管理却比较复杂。数据管理是指数据搜集、整理、组织、存放、维护、检索、传送等操作,这部分操作是数据处理业务基础步骤,而且是任何数据处理业务中必不可少共有部分。数据管理技术优劣,将直接影响数据处理效率。 2.1.1 数据库发展 数据管理技术发展,和硬件(关键是外存)、软件、计算机应用范围有亲密联络。数据管理技术发展经过三个阶段:人工管理阶段、文件系统阶段和数据库阶段。 人工管理阶段和文件系统阶段全部有着相当多缺点,诸如数据冗余性 ,数据不一致性和数据联络弱等等。也正是因为这些原因,促进大家研究新数据管理技术,从而产生了数据库技术。 20世纪60年代末发生三件大事,层次模型IMS系统推出、相关网状模型DBTG汇报发表和相关关系模型论文连续发表标志着数据管理技术进入数据库阶段。进入70年代以后,数据库技术得到快速发展,开发了很多有效产品并投入运行。数据库系统克服了文件系统缺点,提供了对数据更高级更有效管理。 当进入数据库阶段后,伴随数据管理规模一再扩大,数据量急剧增加,为了提升效率,开始时,大家只是对文件系统加以扩充,在应用文件中建立了很多辅助索引,形成倒排文件系统。但这并不能最终处理问题。在20世纪60年代末,磁盘技术取得关键进展,含有数百兆容量和快速存取磁盘陆续进入市场,成本也不高,为数据库技术产生提供了良好物质条件。 2.1.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) 在一个较大型企业当中,用户不一样需求,往往会造成系统或数据库在设计上困扰,不过一个适宜数据库系统,能够经过数据库管理员管理,将会有效地整理各方面信息,对于部分较关键应用程序,能够适时地提供较快速数据存取方法和格式,以平衡多个用户在需求上冲突。 上述七个方面组成了数据库系统关键特征。这个阶段程序和数据间联络可用下图表示: 2.1.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本身要在操作系统支持下才能工作。数据库不仅用到数据结构知识,而且丰富了数据结构内容。在关系数据库中要用到集合论、数理逻辑理论。所以,数据库技术是一门综合性较强学科。 §2.2数据库理论基础 2.2.1 数据库模型 从20世纪50年代中期开始,计算机应用由科学研究部门逐步扩展到企业、行政部门。至60年代,数据处理成为计算机关键应用。数据库技术作为数据管理技术,是计算机软件领域一个关键分支,产生于60年代末。现已形成相当规模理论体系和实用技术。 模型是对现实世界抽象。在数据库技术中,我们用模型概念描述数据库结构和语义,对现实世界进行抽象,表示实体类型及实体间联络模型称为“数据模型” 。 现在广泛作用数据模型可分为两种类型。 一个是独立于计算机系统模型,完全不包含信息在系统中表示,只是用来描述某个特定组织所关心信息结构,这类模型称为“概念数据模型” 。要领模型用于建立信息世界数据模型,强调其语义表示功效,应该概念简单、清楚,易于用户了解,它是现实世界第一层抽象,是用户和数据库设计人员之间进行交流工具。这一其中著名模型是“实体联络模型” 。 另一个数据模型是直接面向数据库逻辑结构,它是现实世界第二层抽象。 这类模型包含到计算机系统和数据库管理系统,又称为“结构数据模型” 。比如,层次、网状、关系、面向对象等模型。这类模型有严格形式化定义,方便于在计算机系统中实现。 (1)层次模型。用树型结构表示实体类型及实体间联络数据模型。树结点是统计类型,每个非根结点有且只有一个父结点。上一层统计类型和下一层统计类型间联络是1∶N联络。 层次模型特点是统计之间联络经过指针实现,查询效率较高。但层次模型有两个缺点:一是只能表示1∶N联络,即使有多个辅助手段实现了M∶N联络,但全部较复杂,用户不易掌握,二是因为树型结构层次次序严格和复杂,引发数据查询和更新操作也很复杂,所以,编写应用程序也很复杂。 (2)网状模型。用有向图结构表示实体类型及实体间联络数据模型。。1969年DBTG汇报提出数据模型是网状模型关键代表。有向图中结点是统计类型,有向边表示从箭尾一端统计类型到箭头一端统计类型间联络是1∶N联络。 网状模型特点:统计之间联络经过指针实现,M∶N联络也轻易实现(每个M∶N联络可拆成两个1∶N联络),查询效率较高。网状模型缺点是编写应用程序比较复杂,程序员必需熟悉数据库逻辑结构。因为层次系统和网状系统应用程序编制比较复杂,所以,从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数据、图形数据等,而关系模型在这方面处理能力就显得力不从心。所以,大家需要更高级数据库技术来表示这类信息。面向对象概念最早出现在程序设计语言中,随即快速渗透到计算机领域每一个分支。面向对象数据库是面向对象概念和数据库技术相结合产物。 面向对象模型能完整地描述现实世界数据结构,含有丰富表示能力,但模型相对较复杂,包含知识面也广,所以面向对象数据库还未达成关系数据库那样普及程度。 2.2.2 数据库体系结构 数据库体系结构分三级:内部级(internal),概念级(conceptual)和外部级(external)。这个三级结构有时也称为“三级模式结构”,或“数据抽象三个等级”,最早是在1971年经过DBTG汇报中提出,以后收入在1975年美国ANSI/SPARC汇报中。即使现在DBMS产品多个多样,在不一样操作系统支持下工作,不过大多数系统在总体系结构上全部含有三级模式结构特征。从某个角度看到数据特征称为“数据视图”(data view)。 外部级最靠近用户,是单个用户所能看到数据特征。单个用户使用数据视图描述称为“外模式”。 概念级包含到全部用户数据定义,是全局数据视图。全局数据视图描述称为“概念模式”。 内部级最靠近于物理存放设备,包含到实际数据存放结构。物理存放数据视图描述称为“内模式”。 数据库三级模式结构是数据三个抽象等级。它把数据具体组织留给DBMS去做,用户只要抽象地处理数据,而无须关心数据在计算机中表示和存放,这么就减轻了用户使用系统负担。 三级结构之间往往差异很大,为了实现这三个抽象等级联络和转换,DBMS在三级结构之间提供两个层次映象(mappings):外模式/模式映象,模式/内模式映象。此处模式是概念模式简称。 2.2.3 数据独立性 因为数据库系统采取三级模式结构,所以系统含有数据独立性特点。在数据库技术中,数据独立性是指应用程序和数据之间相互独立,不受影响。数据独立性分成物理数据独立性和逻辑数据独立性两级。 (1)物理数据独立性 假如数据库内模式要进行修改,即数据库存放设备和存放方法有所改变,那么模式/内模式映象也要进行相当修改,使概念模式尽可能保持不变。也就是对内模式修改尽可能不影响概念模式,当然,对于外模式和应用程序影响更小,这么,我们称数据库达成了物理数据独立性。 (2)逻辑数据独立性 假如数据库概念模式要进行修改,譬如增加统计类型或增加数据项,那么外模式/模式映象也要进行对应修改,使外模式尽可能保持不变。也就是对概念模式修改尽可能不影响外模式和应用程序,这么,我们称数据库达成了逻辑数据独立性。 现相关系系统产品均提供了较高物理独立性,而对逻辑独立性支持还有欠缺,比如,对外模式数据更新受到限制等。 2.2.4 范式 建立起一个良好数据指标体系,是建立数据结构和数据库最关键一环。一个良好数据指标体系是建立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数据结构来说,表中有可能存在一些数据元素依靠于其它非关键宇数据元素现象,必需加以消除。 为预防数据库出现更新异常、插入异常、删除异常、数据冗余太大等现象,关系型数据库要尽可能按关系规范化要求进行数据库设计。 §2.3 SQL语言基础 2.3.1 SQL介绍 用户对数据库使用,是经过数据库管理系统提供语言来实现。不一样数据库管理系统提供不一样数据库语言。关系数据库管理系统几乎全部提供关系数据库标准语言——SQL。 SQL 全称是Structured Query Language,即结构化查询语言。SQL语句能够从关系数据库中取得数据,也能够建立数据库、增加数据、修改数据。1986年ANSI采取SQL语言作为关系数据库系统标准语言,后被国际化标准组织(ISO)采纳为国际标准。SQL语言使用方便、功效丰富、简练易学,是操作数据库工业标准语言,得到广泛地应用。比如关系数据库产品DB2、ORACLE等全部实现了SQL语言。同时,其它数据库产品厂家也纷纷推出各自支持SQL软件或和SQL接口软件。这么SQL语言很快被整个计算机界认可。 SQL语言是一个非过程化语言,它一次处理一个统计集合,对数据提供自动导航。SQL语言许可用户在高层数据结构上工作,而不对单个统计进行操作。SQL语言不要求用户指定数据存取方法,而是使用查询优化器,由系统决定对指定数据存取最快速手段。当设计者在关系表上定义了索引时,系统会自动利用索引进行快速检索,用户不需知道表上是否有索引或有什么类型索引等细节。 SQL语言能够完成很多功效,比如: ● 查询数据 ● 在数据库表格中插入、修改和删除统计 ● 建立、修改和删除数据对象 ● 控制对数据和数据对象存取 ● 确保数据库一致性和完整性等 2.3.2 SQL查询 数据查询是关系运算理论在SQL语言中关键表现,SELECT 语句是SQL查询基础语句,当我们在对一个数据库进多种多样操作时,使用最多就是数据查询,在以SQL为基础关系数据库中,使用最多就是SELECT查询语句。 SELECT语句完整句法以下: SELECT 目标表列名或列表示式序列 FROM 基础表和(或)视图序列 [WHERE 行条件表示式] [GROUP BY 列名序列] [HAVING 组条件表示式] [ORDER BY列名 [ASC│DEAC]…] 我在SELECT语句中还使用了大量保留字和通配符以进行多种多样条件查询。在系统中有大量查询按钮,其使用了大量查询语句,而且这些查询语句大部分使用是模糊查询,所以大量使用了模式匹配符LIKE(判定值是否和指定字符通配格式相符)。在包含LIKE查询语句中能够使用两个通配符:%(百分号):和零个或多个字符组成字符串匹配;_(下划线):和单个字符匹配。系统中条件判定往往包含多个条件,这时就需要使用逻辑运算符NOT、AND、OR(用于多条件逻辑连接),谓词ALL和保留字DISTINCT等等。做为SELECT语句还有很多使用方法,这里就不再叙述。 2.3.3 SQL数据更新 使用数据库目标是为了有效地管理数据,而数据插入、删除和修改则是必不可少一个功效。在本系统中就大量地使用了数据插入、删除和修改这三种操作,现做一个简单地介绍。 ●数据插入 往数据库基础表中插入数据使用是INSERT语句,其方法有两种:一个是元组值插入,另一个是查询结果插入。在本系统中使用是前一个方法,其句法以下: INSERT INTO 基础表名(列表名)VALUES(元组值) ●数据删除 往数据库基础表中删除数据使用是DELETE语句,其句法以下: DELETE FROM 基础表名 [WHERE 条件表示式] 在些作一点说明,删除语句实际上是“SELECT * FROM 基础表名 [WHERE 条件表示式]”和DELETE操作结合,每找到一个元组,就把它删除。另外,DELETE语句只能从一个基础表中删除元组,WHERE子句中条件能够嵌套,也能够是来自多个基础表复合条件。 ●数据修改 当需要修改基础表中元组一些列值时,能够用UPDATE语句实现,其句法以下: UPDATE基础表名 SET列名=值表示式[,列名=值表示式…] [WHERE条件表示式] 在Delphi中使用SQL语句是很方便,通常来说,全部是经过TQuery组件来使用SQL语言。有一点要进行说明,即使经过TQuery组件来使用SQL语言很方便,但考虑到自己对不一样组件了解程度、个人习惯和其它各个方面,在本系统中我采取是ADO组件来对数据库进行操作。最简单方法比如在TADOQuery组件SQL属性中就能够键入SQL语句,至于具体使用方法在后面进行介绍。 第三章 数据库开发工具 §3.1 Delphi 6.0 介绍 Delphi类能够粗略地分成两部分:一部分是组件类,这些组件类通常以某种方法出现在组件面板上,当用户从组件面板上点取一个类图标后,在程序中就自动生成了该类对象(非可视组件除外);另一部分是功效类,这此功效类对象通常出现在程序代码中,起着不可替换作用,不过这些功效类在组件面板上是找不到。在Delphi中,每一个类祖先全部是Tobject类,整个类层次结构就像一棵倒挂树,在最顶层树根即为Tobject类。这么,根据面向对象编程基础思想,就使得用户可用Tobject类这个类型替换任何其它类数据类型。实际上在Delphi类库中,Tobject类派生出了为数相当众多子类,它们形成了一个庞大体系,通常情况下,假如不自行开发组件,就无须了解整个类体系结构,- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 管理 系统 总体 设计 样本
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文