1、数据库系统相关概念
1、数据:描述事物的符号记录,包括数据的表现形式和数据解释两个部分。如数字、音频、图形、文本、图像、语言、视频等多种表现形式。经过数字化处理后存入计算机。
数据是信息的符号表示或载体。信息是数据的内涵是对数据的语义解释。
2、数据库(DB):长期存储在计算机内、有组织、可共享的大量数据的集合。数据库中的数据按照一定的数据模型组织、描述和存储,具有娇小的冗余度、交稿的数据独立性和易扩展性,并可为各种用户共享。
3、数据库管理系统(DBMS):位于用户和操作系统间的数据管理系统的一层数据管理软件。用途:科学地组织和存储数据,高效地获取和维护数据。包括数据定义功能,数据组织、存储和管理,数据库的事物管理和运行管理,数据库的建立和维护功能,其他功能。
4、数据库系统(DBS):在计算机系统中引入数据库后的系统,一般由数据库。数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。目的:存储信息并支持用户检索和更新所需的信息。
2、数据模型概念,作用及其3要素
模型:对现实世界中某个对象特征的模拟和抽象。
数据模型:是数据库中用来对现实世界数据特征的抽象的工具,是数据库中用于提供信息表示和操作手段的形式架构。
三要素:
- 数据结构:是所研究的对象类型的集合,是对系统静态特性的描述。
- 数据操作:对数据库中各种对象(型)的实例(值)所允许进行的操作的集合,包括操作及有关的操作规则,是对系统动态特性的描述。
- 数据的约束条件:是完整性规则的集合。完整性规则是给订的数据库模型中数据及其联系所具有的制约和依存规则,用一限定符合数据模型的数据库状态及其变化,以保证数据库的正确、有效、相容。
3、概念模型的作用?
概念模型实际上是显示世界到机器世界的一个中间层次。概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流所试用的语言。
4、概念模型中ER图的设计
E-R图(实体—联系方法)提供了表示实体型、属性和联系的方法:
实体型:用矩形表示,矩形框内写明实体名。
属性:用椭圆形表示,并用无向边将其与相应的实体型连接起来。
5、数据库系统三级模式结构和二级映像功能,这种结构的优点?
三级模式结构:
- 模式:(逻辑模式)数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。一个数据库只有一个模式。
模式的地位:是数据库系统模式结构的中间层,与数据的物理存储细节和硬件环境无关,与具体的应用程序、开发工具及高级程序设计语言无关。
模式定义的内容:数据的逻辑结构(数据项的名字、类型、取值范围等),数据之间的联系,数据有关的安全性、完整性要求
- 外模式:(子模式/用户模式)数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据库和逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的系统的逻辑表示。一个数据库可以有多个外模式。
外模式的地位:介于模式与应用之间
模式与外模式的关系:一对多。外模式通常是模式的子集。一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求。对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同。
外模式与应用的关系:一对多。同一外模式也可以为某一用户的多个应用系统所使用
但一个应用程序只能使用一个外模式
- 内模式:存储模式或内视图)是数据物理结构和存储方式的描述,是数据在数据库内部实际存储的表示方式:
记录的存储方式(顺序,B树,hash方法存储),索引的组织方式,数据是否压缩存储,数据是否加密。数据存储记录结构的规定,一个数据库只有一个内模式
三级模式的优点:
(1)保证数据的独立性(内模式与模式分开物理独立;外模式与模式分开逻辑独立)
(2)简化用户窗口 (3)有利于数据共享 (4)利于数据的安全保密
(5)数据存储由DBMS管理(用户不用考虑存取路径等细节)
二级映像功能:
- 外模式/模式映像(应用可扩充性)
定义外模式(局部逻辑结构)与模式(全局逻辑结构)之间的对应关系,映象定义通常包含在各自外模式的描述中,每一个外模式,数据库系统都有一个外模式/模式映象。
用途:保证数据的逻辑独立性
当模式改变时,数据库管理员修改有关的外模式/模式映象,使外模式保持不变
应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
- 模式/内模式映像(空间利用率,存取效率)
模式/内模式映像是唯一的,它定义了数据全局逻辑结构与存储结构之间的对应关。数据库中模式/内模式映象是唯一的。该映象定义通常包含在模式描述中。
用途:保证数据的物理独立性
当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映象,使模式保持不变。应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。
优点:
(1)保证了数据库外模式的稳定性。
(2)从底层保证了应用程序的稳定性,除非应用需求本身发生变化,否则应用程序一般不需要修改。
(3)数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去。