2022年数据库概论宣贯 .pdf
《2022年数据库概论宣贯 .pdf》由会员分享,可在线阅读,更多相关《2022年数据库概论宣贯 .pdf(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二章数据库概论2.1 数据库的发展数据库处理在信息系统的研究中一直是非常重要的主题,然而,近年来,随着 World Wide Web(WWW)的猛增及 Internet 技术的迅速发展,使得数据库技术之时成为最热门技术之一。数据库技术能使Internet应用超越具有早期应用特点的简单的发布。同时,Internet 技术提供了一种向用户发布数据库内容的标准化的访问方法。这些技术没有脱离经典数据库技术的要求。它们只是加重了数据库技术的重要性。数据库的设计和开发及包括艺术有包括工程。理解用户的需求,然后,把它们转变为有效的数据库设计是一个艺术过程。把设计转变为实际的数据库,并且这些数据库带有功能完
2、备、高效能的应用,是一个工程过程。数据库的目的是帮助人们跟踪事务。经典的数据库应用涉及诸如订单、顾客、工作、员工、学生、电话之类的项,或其它数据量较大、需要密起关注的事务。最近,由于数据库的普及,数据库技术已经被应用到了新的领域,诸如用于Internet 的数据库或用于公司内联网的数据库。数据库也被越来越多地应用于生成和维护多媒体应用程序上。计算机的数据处理应用,首先要把大量的信息以数据形式存放在存储器中。存储器的容量、存储速率直接影响到数据管理技术的发展。从1956 年生产出第一台计算机到现在,存储器的发展,为数据库技术提供了良好的物质基础。使用计算机以后,数据处理的速度和规模,无论是相对于
3、手工方式,还是机械方式,都有无可比拟的优势。通常在数据处理中,计算是比较简单的而数据的管理却比较复杂。数据管理是指数据的收集、整理、组织、存储、维护、检索、传送等操作,这部分操作是数据处理业务的基本环节,而且是任何数据处理业务中必不可少的共有部分。数据管理技术的优劣,将直接影响数据处理的效率。2.1.1 数据库的发展数据管理技术的发展,与硬件(主要是外存)、软件、计算机应用的范围有密切的联系。数据管理技术的发展经过三个阶段:人工管理阶段、文件系统阶段和数据库阶段。人工管理阶段和文件系统阶段都有着相当多的缺陷,诸如数据冗余性,数据不一致性以及数据联系弱等等。也正是由于这些原因,促使人们研究新的数
4、据管理技术,从而产生了数据库技术。20 世纪 60年代末发生的三件大事,层次模型 IMS 系统的推出、关于网状模名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 18 页 -型 DBTG 报告的发表以及关于关系模型论文的连续发表标志着数据管理技术进入数据库阶段。进入70 年代以后,数据库技术得到迅速发展,开发了许多有效的产品并投入运行。数据库系统克服了文件系统的缺陷,提供了对数据更高级更有效的管理。当进入数据库阶段后,随着数据管理规模一再扩大,数据量急剧增加,为了提高效率,开始时,人们只是对文件系统加以扩充,在应用文件中建立了许多辅助索引,形成倒排文件系统。但这并不能最终解决问题。
5、在20 世纪 60 年代末,磁盘技术取得重要进展,具有数百兆容量和快速存取的磁盘陆续进入市场,成本也不高,为数据库技术的产生提供了良好的物质条件。2.1.2 数据库的特点(1)减少数据的重复(Redundancy can be reduced)当在一个非数据库系统当中,每一个应用程序都有属于他们自己的文件,由于无法有系统建立的数据,因此常常会造成存储数据的重复与浪费。例如:在一家公司当中,人事管理程序与工资管理程序或许都会使用到职员与部门的信息或文件,而我们可以运用数据库的方法,把这两个文件整理起来,以减少多余的数据,过度地占用存储空间。(2)避免数据的不一致(Inconsistency ca
6、n avoid)本项的特色,可以说是延伸前项的一个特点,要说明这样的一个现象,我们可以从下面这个实例来看:若是在同一家公司当中,职员甲在策划部门工作,且职员甲的记录同时被存放在数据库的两个地方,而数据库管理系统却没有对这样重要的情况加以控制,当其中一条数据库被修改时,便会造成数据的不一致,但是,对于一个健全的数据库管理系统而言,将会对这样的情况加以控制,但有时并不需要刻意消除这种情形,应当视该数据库的需求与效率来决定。(3)数据共享(Data shared)对于数据共享的意义,并不是只有针对数据库设计的应用程序,可以使用数据库中的数据,对于其他撰写好的应用程序,同样可以对相同数据库当中的数据进
7、行处理,进而达到数据共享的目的。(4)强化数据的标准化(Standard can be enforced)由数据库管理系统,对数据做出统筹性的管理,对于数据的格式与一些存储上的标准进行控制,如此一来,对于不同的环境的数据交换(Data Interchange)上将有很大的帮助,也能提高数据处理的效率。(5)实践安全性的管理(Security restriction can be applied)通过对数据库完整的权限控制,数据库管理者可以确认所有可供用户存取数据的合法途径渠道,并且可以事先对一些较重要或关键性的数据进行安全检查,以确保数据存取时,能够将任何不当损毁的情形降至最低。名师资料总结-
8、精品资料欢迎下载-名师精心整理-第 2 页,共 18 页 -(6)完整性的维护(Integrity can be maintained)所谓完整性的问题,就是要确认某条数据在数据库当中,是正确无误的。正如(2)所述,若是无法控制数据的不一致性,便会产生完整性不足的问题,所以,我们会发现,当数据重复性高的时候,数据不完整的情形也会增加,当然,若是数据库的功能完整,将会大大地提高数据完整性,也会增加数据库的维护能力与维护简便性。(7)需求冲突会获得平衡(Conflicting requirements can be balance)在一个较大型的企业当中,用户不同的需求,往往会造成系统或数据库在设
9、计上的困扰,但是一个合适的数据库系统,可以通过数据库管理员的管理,将会有效地整理各方面的信息,对于一些较重要的应用程序,可以适时地提供较快速的数据存取方法与格式,以平衡多个用户在需求上的冲突。上述七个方面构成了数据库系统的主要特征。这个阶段的程序和数据间的联系可用下图表示:2.1.3 数据库技术从文件系统发展到数据库系统是信息处理领域的一个重大变化。在文件系统阶段,人们关注的中心问题是系统功能的设计,因而程序设计处于主导地位,数据只起着服从程序需要的作用。在数据库方式下,信息处理观念已为新体系所取代,数据占据了中心位置。数据结构的设计成为信息系统首先关心的问题,而利用这些数据的应用程序设计则退
10、居到以既定的数据结构为基础的外围地位。目前世界上已有数百万个数据库系统在运行,其应用已经深入到人类社会生活的各个领域,从企业管理、银行业务、资源分配、经济预测一直到信息检索、档案管理、普查统计等。并在通信网络基础上,建立了许多国际性的联机检索系应用程序 1应用程序 n应用程序 2数 据 库管理系统数据库图 2.1 程序与数据的联系名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 18 页 -用户数据元数据索引数据库引擎设计工具表生成工具窗体生成工具查询生成工具报表生成工具过程语言编译执行时间窗体处理器查询处理器开发人程序用户统。我国 20 世纪 90 年代初在全国范围内装备了12
11、个以数据库技术为基础的大型计算机系统,这些系分布在邮电、计委、银行、电力、铁路、气象、民航、情报、公安、军事、航天和财税等行业。数据库技术还在不断的发展,并且不断地与其它计算机技术相互渗透。数据库技术与网络通信技术相结合,产生了分布式数据库系统。数据库技术与面向对象技术相结合,产生了面向对象数据库系统。2.2 数据库理论基础2.2.1 数据库模型从 20世纪 50年代中期开始,计算机的应用由科学研究部门逐步扩展到企业、行政部门。至 60 年代,数据处理成为计算机的主要应用。数据库技术作为数据管理技术,是计算机软件领域的一个重要分支,产生于60 年代末。现已形成相当规模的理论体系和实用技术。模型
12、是对现实世界的抽象。在数据库技术中,我们用模型的概念描述数据库的结构与语义,对现实世界进行抽象,表示实体类型及实体间联系的模型称为“数据模型”。目前广泛作用的数据模型可分为两种类型。一种是独立于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息结构,这类模型称为“概念数据模型”。要领模型用于建立信息世界的数据模型,强调其语义表达功能,应该概念简单、清晰,易于用户理解,它是现实世界的第一层抽象,是用户和数据库设计人员之间进行交流的工具。这一其中著名的模型是“实体联系模型”。另一种数据模型是直接面向数据库的逻辑结构,它是现实世界的第二层抽象。这类模型涉及到计算机系
13、统和数据库管理系统,又称为“结构数据模型”。例如,层次、网状、关系、面向对象等模型。这类模型有严格的形式化定义,以便于在计算机系统中实现。2.2.2 数据库体系结构数据库的体系结构分三级:内部级(internal),概念级(conceptual)和外部级(external)。这个三级结构有时也称为“三级模式结构”,或“数据抽象的三个级别”,最早是在1971 年通过的 DBTG 报告中提出,后来收入在1975 年的美国ANSI/SPARC 报告中。虽然现在DBMS 的产品多种多样,在不同的操作系统支持下工作,但是大多数系统在总的体系结构上都具有三级模式的结构特征。数据库DBMS 名师资料总结-精
14、品资料欢迎下载-名师精心整理-第 4 页,共 18 页 -从某个角度看到的数据特性称为“数据视图”(data view)。外部级最接近用户,是单个用户所能看到的数据特性。单个用户使用的数据视图的描述称为“外模式”。概念级涉及到所有用户的数据定义,是全局的数据视图。全局数据视图的描述称为“概念模式”。内部级最接近于物理存储设备,涉及到实际数据存储的结构。物理存储数据视图的描述称为“内模式”。数据库的三级模式结构是数据的三个抽象级别。它把数据的具体组织留给DBMS 去做,用户只要抽象地处理数据,而不必关心数据在计算机中的表示和存储,这样就减轻了用户使用系统的负担。三级结构之间往往差别很大,为了实现
15、这三个抽象级别的联系和转换,DBMS 在三级结构之间提供两个层次的映象(mappings):外模式/模式映象,模式/内模式映象。此处模式是概念模式的简称。2.2.3 数据的独立性由于数据库系统采用三级模式结构,因此系统具有数据独立性的特点。在数据库技术中,数据独立性是指应用程序和数据之间相互独立,不受影响。数据独立性分成物理数据独立性和逻辑数据独立性两级。(1)物理数据独立性如果数据库的内模式要进行修改,即数据库的存储设备和存储方法有所变化,那么模式/内模式映象也要进行相当的修改,使概念模式尽可能保持不变。也就是对内模式的修改尽量不影响概念模式,当然,对于外模式和应用程序的影响更小,这样,我们
16、称数据库达到了物理数据独立性。(2)逻辑数据独立性如果数据库的概念模式要进行修改,譬如增加记录类型或增加数据项,那么外模式/模式映象也要进行相应的修改,使外模式尽可能保持不变。也就是对概念模式的修改尽量不影响外模式和应用程序,这样,我们称数据库达到了逻辑数据独立性。现有关系系统产品均提供了较高的物理独立性,而对逻辑独立性的支持尚有欠缺,例如,对外模式的数据更新受到限制等。数据库包括图 2.2 数据库体系结构名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 18 页 -2.3 SQL 语言基础2.3.1 SQL 简介用户对数据库的使用,是通过数据库管理系统提供的语言来实现的。不同的数
17、据库管理系统提供不同的数据库语言。关系数据库管理系统几乎都提供关系数据库标准语言 SQL。SQL 的全称是 Structured Query Language,即结构化查询语言。SQL 语句可以从关系数据库中获得数据,也可以建立数据库、增加数据、修改数据。1986年 ANSI 采用 SQL 语言作为关系数据库系统的标准语言,后被国际化标准组织(ISO)采纳为国际标准。SQL 语言使用方便、功能丰富、简洁易学,是操作数据库的工业标准语言,得到广泛地应用。例如关系数据库产品DB2、ORACLE等都实现了 SQL 语言。同时,其它数据库产品厂家也纷纷推出各自的支持SQL的软件或者与 SQL 的接口软
18、件。这样SQL 语言很快被整个计算机界认可。SQL 语言是一种非过程化语言,它一次处理一个记录集合,对数据提供自动导航。SQL 语言允许用户在高层的数据结构上工作,而不对单个记录进行操作。SQL 语言不要求用户指定数据的存取方法,而是使用查询优化器,由系统决定对指定数据存取的最快速手段。当设计者在关系表上定义了索引时,系统会自动利用索引进行快速检索,用户不需知道表上是否有索引或者有什么类型的索引等细节。SQL 语言可以完成许多功能,例如:查询数据 在数据库表格中插入、修改和删除记录 建立、修改和删除数据对象 控制对数据和数据对象的存取 确保数据库的一致性和完整性等2.3.2 SQL 查询数据查
19、询是关系运算理论在SQL 语言中的主要体现,SELECT 语句是 SQL查询的基本语句,当我们在对一个数据库进各种各样的操作时,使用的最多的就是数据查询,在以SQL 为基础的关系数据库中,使用的最多的就是SELECT 查询语句。SELECT 语句的完整句法如下:SELECT 目标表的列名或列表达式序列FROM 基本表和(或)视图序列WHERE 行条件表达式 GROUP BY 列名序列 HAVING 组条件表达式 名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 18 页 -ORDER BY 列名 ASCDEAC,我在 SELECT 语句中还使用了大量的保留字和通配符以进行各种各样的
20、条件查询。在系统中有大量的查询按钮,其使用了大量的查询语句,而且这些查询语句大部分使用的是模糊查询,所以大量的使用了模式匹配符LIKE(判断值是否与指定的字符通配格式相符)。在包含LIKE的查询语句中可以使用两个通配符:%(百分号):与零个或多个字符组成的字符串匹配;_(下划线):与单个字符匹配。系统中的条件判断往往包含多个条件,这时就需要使用逻辑运算符NOT、AND、OR(用于多条件的逻辑连接),谓词 ALL 以及保留字 DISTINCT 等等。做为 SELECT 语句还有很多的使用方法,这里就不再叙述。2.3.3 SQL 数据更新使用数据库的目的是为了有效地管理数据,而数据的插入、删除和修
21、改则是必不可少的一个功能。在本系统中就大量地使用了数据插入、删除和修改这三种操作,现做一个简单地介绍。数据插入往数据库的基本表中插入数据使用的是INSERT 语句,其方式有两种:一种是元组值的插入,另一种是查询结果的插入。在本系统中使用的是前一种方式,其句法如下:INSERT INTO 基本表名(列表名)VALUES(元组值)数据删除往数据库的基本表中删除数据使用的是DELETE 语句,其句法如下:DELETE FROM 基本表名 WHERE 条件表达式 在些作一点说明,删除语句实际上是“SELECT*FROM 基本表名WHERE 条件表达式”和 DELETE 操作的结合,每找到一个元组,就把
22、它删除。此外,DELETE 语句只能从一个基本表中删除元组,WHERE 子句中条件可以嵌套,也可以是来自几个基本表的复合条件。数据修改当需要修改基本表中元组的某些列值时,可以用UPDATE 语句实现,其句法如下:UPDATE 基本表名SET 列名=值表达式,列名=值表达式,WHERE 条件表达式 在 Visual Basic 6.0中使用 SQL 语句是很方便的。在本系统中我采用的是ADO 组件来对数据库进行操作。最简单的方法比如在Microsoft DAO3.6 Object Library组件的 SQL 属性中就可以键入SQL 语句,至于详细的使用方法在后面进行介绍。名师资料总结-精品资料
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年数据库概论宣贯 2022 数据库 概论
限制150内