数据库基础

1、数据库技术的发展

1)数据:数据库系统研究和处理的对象,信息的符号表示或称载体,符号化的信息。

2)信息:具有一定含义的,经过加工的,对对策有价值的数据,数据的内涵,是数据的语义解释,语义化的数据。

3)数据处理

(1)定义:指从某些已知的数据出发,推导加工出一些新的数据。

(2)过程包含:在数据处理的具体过程中,会涉及数据的收集、存储、加工、利用、传播乃至信息输出的全过程。

4)数据管理:指对数据进行分类、组织、编码、存储、维护、检索、传送等,是数据处理的中心环节。

5)数据库:指长期存储在计算机中,有组织、可共享的数据的集合。

6)数据管理技术经历的阶段

(1)人工管理阶段---数据处理方式为批处理。

                 数据管理的特点:

                        数据不保存在计算机内,计算机主要用于科学计算。

                        无专门软件对数据进行管理,程序中要处理的数据由应用程序本身管理,应用程序不仅要定义数据的逻辑结构,还要设计物理结构,包括数据存取方式、输入输出方式等内容。

                        数据不共享。

                        数据不具有独立性。

(2)文件系统阶段---数据处理方式有批处理和联机实时处理。

                 数据管理的特点:

                        数据可以长期保存。

                        由文件系统管理数据。

                 文件系统的缺点:

                        数据冗余。

                        数据不一致。

                        数据联系弱。

                        数据查询困难。

(3)数据库阶段

                 数据管理的特点:

                        采用复杂的数据模型。

                        数据冗余度小。

                        数据独立性高。

                        为用户提供了方便的用户接口。

                        统一的数据控制功能。

7)数据库的组成

              应用程序+计算机支持系统+数据库(DB)+数据库管理系统(DBMS)+人员

8)数据库管理系统的特点

(1)数据结构化,数据存储具有规范性。

(2)数据共享性高,但冗余度低(有冗余数据)。

(3)数据独立于程序:逻辑独立性+物理独立性

(4)统一管理和控制数据。

9)数据库管理系统的功能

(1)数据定义功能:数据定义语言(DDL)定义数据对象。

(2)数据操纵功能:数据操纵语言(DML)操纵数据,实现对数据库的基本操作。

(3)数据库的运行管理。

(4)数据库的建立和维护功能。

            

 

 2、数据模型

1)模型:对现实世界事物的模型的模拟和抽象。

2)数据模型

(1)定义:一种能反映现实世界数据特征及内在联系的一种模型,是数据库系统的核心和基础。

(2)概念模型---第一层抽象:主要用于数据库设计,实体-联系模型,简称E-R模型。

(3)逻辑数据模型(结构数据模型)---第二层抽象:直接面向数据库的逻辑结构。

3)概念模型

(1)实体:客观存在的并且可以相互区别的事物称为实体。

(2)属性:实体所具有的某一特性。

(3)码:唯一标识实体的属性。

(4)域:属性的取值范围。

(5)实体集:相同实体的集合。

(6)联系:实体内部的联系表现为组成实体的各属性间的内在联系;实体之间的联系通常指不同实体集之间的联系。

(7)两个实体集之间的联系:一对一、一对多、多对多

4)结构数据模型

(1)层次模型

                定义:最早出现的一种数据模型,是用树形结构表示实体及实体间联系的模型。树的结点是记录类型,每个非根结点有且只有一个父节点,上一层记录类型和下一层记录类型之间的联系是一对多的联系。

                优点:结构简单,易于实现。

                缺点:只支持一对多联系,不支持实体集间的多种联系,数据操纵不方便,子节点的存取只能通过父节点来进行,插入、删除复杂,父节点的删除导致子节点的删除。

(2)网状模型

                定义:为有向图,可以有一个以上的结点且无父节点,至少有一个结点多于一个的父节点,节点代表实体型,有向边表示两实体型间的一对多联系。

                优点:记录之间通过指针来实现,多对多联系容易实现,查询效率较高。

                缺点:编写应用程序比较复杂。

(3)关系模型

                定义:数据的逻辑结构是一张二维表,由行和列组成,关系模型与前两者之间最大的区别是用键导航数据,而非指针。

(4)面向对象数据模型

                对象:现实中实体的模型化,每个对象有唯一的标识符,把状态和行为封装在一起。

                对象的状态:该对象属性值的集合。

                对象的行为:在对象状态上操作的方法集。

                类:将属性集和方法集相同的所有对象组合在一起。

5)关系模型

(1)组成部分:数据结构+数据操纵+数据完整性规则。

(2)主要特征:用二维表格表示实体集。

(3)术语:

                关系:对应一张表,关系对应实体集的概念,关系中不允许出现相同的元组,是一个属性数目相同的元组的集合。

                元组:表中的一行,一个元组对应一个实体,次序可以任意交换,对应于记录的概念。

                属性:表中的一列,对应于字段的概念,对应一个值域,可以任意交换次序。

                主键:可以唯一地确定一个元组的属性或属性组。

                外键:如果关系R中属性K不是主键,但它是其他关系模式的主键,则属性K在关系R中,称为外键。

                域:属性的取值范围。

                分量:元组中的一个属性值。

                关系模式:是对关系的描述,描述为:关系名(属性1,属性2,...,属性n)。

(4)关系的规范化限制

                关系的每个分量必须是一个不可再分割的数据项,不允许表中有表。

                关系中每个属性必须是不可再分解的。

                关系中不允许出现重复元祖。

                由于关系是一个集合,不考虑元组间的顺序。

                元组中属性的顺序在理论上是无序的。

(5)数据结构:所研究对象的类型的集合,对象包括:与数据类型、内容和性质有关的对象+与数据之间联系有关的对象。

(6)数据操纵:对数据库随想中各种对象的实例允许执行的操作的集合,包括操作及有关操作规则。

                 数据操作语言(DML)

                        查询语句:用于描述用户的各种检索要求,选择、投影、连接、除、并、交、差,关于查询的理论称为关系运算理论。

                        更新语句:用于描述用户进行插入、删除、修改等操作。

                 关系操作的特点:集合操作方式,即操作的对象和结果都是集合。

                 关系数据语言:

                         关系代数语言:用对关系的运算来表达查询要求,典型代表ISBL。

                         关系演算语言:用谓词来表达查询要求,分为元组关系演算语言和域关系演算语言。

                                 元组变量:元组关系演算语言的谓词变元的基本对象,代表APLHA,QUEL。

                                 域变量:域关系演算语言的谓词变元的基本对象,代表QBE。

                          具有关系代数和关系演算双重特点的语言:代表SQL。

                 关系语言的特点:语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入到高级语言中使用。

(7)完整性约束

                 实体完整性规则:若属性A是关系R的主属性,则属性A不能取空值,要求元组中作为主键的属性不能有空值,不仅是主键整体不能取空值,关系的所有主属性均不能取空值。

                 引用(参照)完整性规则:若属性F是基本关系R的外键,即F是另一基本关系S的主键,则对于R的每个元组在属性F上的取值必须如下:取空值或等于关系S中某个元组的主键值。

                 用户定义完整性规则

3、SQL语言

1)定义:一种通用的、功能很强的关系数据库操纵语言,用于查询、操作、定义和控制关系型数据库中的数据。

2)SQL数据库采用三级体系结构

(1)局部模式---用户模式、外模式

(2)全局模式---概念模式、逻辑模式、模式

(3)存储模式---内模式:存储方式和物理结构

3)SQL的核心主要由四个部分组成

(1)数据定于语言:SQL DDL,主要定义数据库、基本表、视图、索引等结构。

(2)数据操纵语言:SQL DML,主要对数据进行查询和更新。

(3)数据控制语言:SQL DCL,包括对基本表、视图等的授权,完整性约束规则的一些描述、事务控制等内容。

(4)嵌入式SQL语言

4)SQL的数据定义语言

(1)创建数据库:create database <数据库名>

(2)撤销数据库:drop database <数据库名>

(3)修改数据库:alter database <数据库名>

5)SQL的数据更新语言:数据的插入、删除、修改。

6)SQL的数据查询语言

(1)select<列名表>---指定希望查看的列

(2)from<列名表>---指定查询的表

(3)where<条件>---指定查询条件

(4)group by<分组列名表>---指定要分组的列

(5)having<条件>---指定分组的条件

(6)order by<排序列名表>---指定如何排序

4、数据库系统(DBS)

1)定义:采用了数据库技术的计算机系统,DBS是一个世纪可运行的,按照数据库方法存储、维护和向应用系统提供数据支持的系统,是数据库、硬件、软件、各类用户的集合体。

2)数据库管理系统(DBMS)

(1)DBMS目标:用户界面友好、功能完备、效率高、结构清晰、开放性。

(2)DBMS功能:数据定义功能、数据操纵功能、数据库的运行管理(安全性控制、完整性控制、并发控制、数据库恢复)。

(3)DBMS组成

                    数据定义语言及其翻译处理程序

                    数据操纵语言及其翻译解释程序

                    数据运行控制程序

                   实用程序

3)数据库系统的组成

(1)数据库(DB)

(2)硬件

(3)软件

(4)用户

                最终用户

                应用程序员

                数据库管理人员(DBA)

                        职责:数据库的转换和恢复,数据库的安全性、完整性控制,数据库性能的监督、分析和改进,数据库的重组织和重改造。

               系统分析员

4)DBS结构的分类

(1)集中式DBS

                特点:整个数据库系统,包括应用程序、DBMS、数据都装在一台计算机上,为一个用户独占,不同机器之间不能共享。

(2)客户/服务器式DBS

                服务器:网络中某个(些)结点上的计算机专门用于执行DBMS功能,称为数据库服务器。

                客户机:其他节点上的计算机安装DBMS的外围开发工具,支持用户的应用。

                工作原理:客户端的用户请求被传送到数据库服务器,处理后将结果返回给用户。

                功能:前端部分:由应用程序组成。

                           后端部分:包括存取结构、查询优化、并发控制、恢复等系统程序可以完成实物处理和数据访问控制。

(3)分布式DBS

                指数据库中的数据在逻辑上是一个整体,但在物理上分布在计算机网络的不同结点上,网络中的每个结点都可以独立处理本地数据库中的数据,执行局部应用,也可以同时存取和处理多个异地数据库中的数据,执行全局应用。

(4)并行式DBS

                使用多个CPU和读个磁盘进行并行操作,提高数据处理和I/O速度。

                两个指标:吞吐量---在给定时间间隔内能完成任务的数目。

                                  响应时间---完成一个任务所花费的时间。

posted on 2020-05-28 22:43  xqy1874  阅读(443)  评论(0编辑  收藏  举报

导航