从商业计算机的出现开始,数据处理就一直推动着计算机的发展。事实上,数据处理自动化早于计算机的出现。Herman Hollerith发明的穿孔卡片,早在20世纪初就用来记录美国的人口普查数据,并且用机械系统来处理这些...
使用DBMS的一个主要原因是可以对数据和访问这些数据的程序进行集中控制。对系统进行集中控制的人称作数据库管理员(DataBase Administrator, DBA)。DBA的作用包括:? 模式定义(schema definition)。DBA通...
1.12 数据库用户和管理员数据库系统的一个主要目标是从数据库中检索信息和往数据库中存储新信息。使用数据库的人员可分为数据库用户和数据库管理员。1.12.1 数据库用户和用户界面根据所期望的与系统交互方式的...
半结构化数据模型允许那些相同类型的数据项有不同的属性集的数据说明。这和早先提到的数据模型形成了对比:在那些数据模型中所有某种特定类型的数据项必须有相同的属性集。XML语言设计的初衷是为文本文档增加标签...
1.11 特种数据库数据库系统的一些应用领域受到关系数据模型的限制。其结果是,研究人员开发了几种数据模型来处理这些领域的应用,包括基于对象的数据模型和半结构化数据模型。1.11.1 基于对象的数据模型面向对...
数据挖掘(data mining)这个术语指半自动地分析大型数据库并从中找出有用的模式的过程。和人工智能中的知识发现(也称为机器学习(machine learning))或者统计分析一样,数据挖掘试图从数据中寻找规则或模式...
现在我们可以给出一个数据库系统各个部分以及它们之间联系的图了(见图1-5)。数据库系统的体系结构很大程度上取决于数据库系统所运行的计算机系统。数据库系统可以是集中式的、客户/服务器式的(一台服务器为多...
通常,对数据库的几个操作合起来形成一个逻辑单元。如1?2节所示的例子是一个资金转账,其中一个系(A系)的账户进行取出操作,而另一个系(B系)的账户进行存入操作。显然,这两个操作必须保证要么都发生要么都...
查询处理器组件包括:? DDL解释器(DDL interpreter),它解释DDL语句并将这些定义记录在数据字典中。? DML编译器(DML compiler),将查询语言中的DML语句翻译为一个执行方案,包括一系列查询执行引擎能理...
存储管理器是数据库系统中负责在数据库中存储的低层数据与应用程序以及向系统提交的查询之间提供接口的部件。存储管理器负责与文件管理器进行交互。原始数据通过操作系统提供的文件系统存储在磁盘上。存储管理器...
数据库系统划分为不同的模块,每个模块完成整个系统的一个功能。数据库系统的功能部件大致可分为存储管理器和查询处理部件。存储管理非常重要,因为数据库常常需要大量存储空间。企业的大型数据库的大小达到数百...
设计关系数据库所用到的另外一种方法是通常被称为规范化的过程。它的目标是生成一个关系模式集合,使我们存储信息时没有不必要的冗余,同时又能很轻易地检索数据。这种方法是设计一种符合适当的范式(normal fo...
实体-联系(E-R)数据模型使用一组称作实体的基本对象,以及这些对象间的联系。实体是现实世界中可区别于其他对象的一件事情或一个物体。例如,每个人是一个实体,每个银行账户也是一个实体。数据库中实体通过属...
为了阐明设计过程,我们来看如何为大学做数据库设计。初始的用户需求说明可以基于与数据库用户的交流以及设计者自己对大学机构的分析。这个设计阶段中的需求描述是制定数据库的概念结构的基础。以下是大学的主要...
高层的数据模型为数据库设计者提供了一个概念框架,去说明数据库用户的数据需求,以及将怎样构造数据库结构以满足这些需求。因此,数据库设计的初始阶段是全面刻画预期的数据库用户的数据需求。为了完成这个任务...
数据库系统被设计用来管理大量的信息。这些大量的信息并不是孤立存在的,而是企业行为的一部分;企业的终端产品可以是从数据库中得到的信息,或者是某种设备或服务,数据库对它们起到支持的作用。数据库设计的主...
SQL不像一个通用的图灵机那么强大;即,有一些计算可以用通用的程序设计语言来表达,但无法通过SQL来表达。SQL还不支持诸如从用户那儿输入、输出到显示器,或者通过网络通信这样的动作。这样的计算和动作必须用一...
SQL提供了一个丰富的DDL语言,通过它,我们可以定义表、完整性约束、断言,等等。例如,以下的SQL DDL语句定义了department表:create table department(dept_name char(20),building char(15),budget num...
SQL查询语言是非过程化的。它以几个表作为输入(也可能只有一个),总是仅返回一个表。下面是一个SQL查询的例子,它找出历史系的所有教员的名字:select instructor.namefrom instructorwhere instructor.dep...
1.5 关系数据库关系数据库基于关系模型,使用一系列表来表达数据以及这些数据之间的联系。关系数据库也包括DML和DDL。在第2章中,我们简单介绍关系模型的基本概念。多数的商用关系数据库系统使用SQL语言,该语言...