数据库基础(1)

来源:互联网 发布:加拿大游戏公司 知乎 编辑:程序博客网 时间:2024/05/20 21:42
数据库的定义

数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合

数据库的特征
数据按一定的数据模型组织、描述和储存
可为各种用户共享
冗余度较小
数据独立性较高
易扩展


什么是DBMS

数据库管理系统(Database  Management System,简称DBMS)是位于用户与操作系统之间的一层数据管理软件。

学生表


DBMS的用途
科学地组织和存储数据、高效地获取和维护数据

DBMS的主要功能

数据定义功能:提供数据定义语言(DDL)
  定义数据库中的数据对象
数据操纵功能:提供数据操纵语言(DML)
  操纵数据实现对数据库的基本操作
  (查询、插入、删除和修改)


什么是数据库系统
数据库系统(Database System,简称DBS)是指在计算机系统中引入数据库后的系统构成。
在不引起混淆的情况下常常把数据库系统简称为数据库。
数据库系统的构成
简单说就是数据库与数据库管理系统的联合。由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(和用户)构成。


数据的定义:描述事物的符号记录
数据与其语义是不可分的
数据库管理系统是位于用户与操作系统之间的一层 数据管理软件  
整体数据的结构化   是数据库系统与文件系统的本质区别。
数据库系统中数据的存取单位是 数据项
文件系统中数据的存取单位是纪录


信息世界中的基本概念纪录

(1) 实体(Entity) 
客观存在并可相互区别的事物称为实体。
可以是具体的人、事、物或抽象的概念。
(2) 属性(Attribute) 
实体所具有的某一特性称为属性。
一个实体可以由若干个属性来刻画。  
(3) 码(Key) 
唯一标识实体的属性集称为码。

4) 域(Domain) 
属性的取值范围称为该属性的域。 
(5) 实体型(Entity Type) 
用实体名及其属性名集合来抽象和刻画
同类实体属于一个实体型
(6) 实体集(Entity Set):同型实体的集合称为实体集

(7) 联系(Relationship)  
现实世界中事物内部以及事物之间的联系在信息世界
中反映为实体内部的联系和实体之间的联系

实体型间联系 
两个实体型                  一对一联系(1:1)   
三个实体型                  一对多联系(1:n) 
一个实体型                   多对多联系(m:n)



概念模型的表示方法

实体-联系方法(Entity-Relationship方法)
用E-R图来描述信息世界的概念模型
E-R方法也称为E-R模型

1)实体型
用矩形表示,矩形框内写明实体名。

2)属性
用椭圆形表示属性,并用无向边将其与相应的实体型连接起来

3)联系
联系本身:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n)  
联系的属性:联系本身也是一种实体型,也可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来


数据模型

最常用的数据模型
层次模型
网状模型
关系模型


关系模型的基本概念

关系(Relation)
一个关系对应通常说的一张表。
元组(Tuple)
表中的一行即为一个元组。
属性(Attribute)

表中的一列即为一个属性,给每一个属性起一个名称即属性名。
码(Key)
表中的某个属性组,它可以唯一确定一个元组。
域(Domain)
属性的取值范围。
分量

元组中的一个属性值。


关系模式
对关系的描述
关系名(属性1,属性2,…,属性n)
学生(学号,姓名,年龄,性别,系,年级)

在关系模型中,实体以及实体间的联系都是用关系来表示。
注:
在层次、网状模型中,数据之间的联系是通过指针实现的
在关系模型中,数据之间的联系是通过主码和外码实现的

实体及实体间的联系的表示方法
实体型:直接用关系(表)表示。
属性:用属性名表示。
一对一联系:隐含在实体对应的关系中。
一对多联系:隐含在实体对应的关系中。
多对多联系:直接用关系表示。


表以文件形式存储
有的DBMS一个表对应一个操作系统文件
有的DBMS自己设计文件结构

SQL Server 数据文件分类
mdf,每个数据库有且仅有一个
Ndf,次要数据文件,含有不能放入主数据文件中的数据。可以有多个。
Ldf,至少有一个,最小512k


关系模型的优缺点

优点
建立在严格的数学概念的基础上
概念单一。数据结构简单、清晰,用户易懂易用
实体和各类联系都用关系来表示。
对数据的检索结果也是关系。
关系模型的存取路径对用户透明
具有更高的数据独立性,更好的安全保密性
简化了程序员的工作和数据库开发建立的工作

缺点
存取路径对用户透明导致查询效率往往不如非
关系数据模型

为提高性能,必须对用户的查询请求进行优化
增加了开发数据库管理系统的难度


数据库系统结构

从数据库管理系统角度看,数据库系统通常采用三级模式结构:这是数据库系统内部的模式结构

从数据库最终用户角度看,数据库系统的结构分为集中式结构、分布式结构、客户/服务器结构和并行结构。这是数据库系统外部的体系结构

数据库系统模式的概念

数据模型中有“型” 和“值” 的概念
型(Type)
对某一类数据的结构和属性的说明
值(Value)
是型的一个具体赋值
例如:学生记录
记录型:
  (学号,姓名,性别,系别,年龄,籍贯)
该记录型的一个记录值:
  (900201,李明,男,计算机,22,江苏)

模式(Schema)
数据库中全体数据的逻辑结构和特征的描述
是型的描述
反映的是数据的结构及其联系
模式是相对稳定的
模式的一个实例(Instance)
模式的一个具体值
反映数据库某一时刻的状态
同一个模式可以有很多实例
实例随数据库中的数据的更新而变动

将数据库结构分为3级:
1)面向用户或应用程序员的用户级、
2)面向建立和维护数据库人员的概念级、
3)面向系统程序员的物理级

数据库系统的三级模式结构


模式(也称逻辑模式)
数据库中全体数据的逻辑结构和特征的描述
所有用户的公共数据视图,综合了所有用户的需求
一个数据库只有一个模式
模式的地位:是数据库系统模式结构的中间层
与数据的物理存储细节和硬件环境无关
与具体的应用程序、开发工具及高级程序设计语言无关
模式的定义
数据的逻辑结构(数据项的名字、类型、取值范围等)
数据之间的联系
数据有关的安全性、完整性要求
DBMS提供DDL严格定义模式

外模式(也称子模式或用户模式)
数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述
数据库用户的数据视图,是与某一应用有关的数据的逻辑表示

外模式的地位:介于模式与应用之间
模式与外模式的关系:一对多
外模式通常是模式的子集
一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求
对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同
外模式与应用的关系:一对多
同一外模式也可以为某一用户的多个应用系统所使用,
但一个应用程序只能使用一个外模式。

外模式的用途
保证数据库安全性的一个有力措施。
每个用户只能看见和访问所对应的外模式中的数据

内模式(也称存储模式)
是数据物理结构和存储方式的描述
是数据在数据库内部的表示方式
记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)
索引的组织方式
数据是否压缩存储
数据是否加密
数据存储记录结构的规定
一个数据库只有一个内模式


数据按外模式的描述提供给用户,
数据按内模式的描述存储在磁盘中,
而模式提供了连接这两级的相对稳定的中间观点,并使得这两级的任何一级的改变都不受另一级的牵制

对于一个数据库系统而言:
物理级数据库是客观存在的,它是进行数据库操作的基础,
概念级数据库中不过是物理数据库的一种逻辑的、抽象的描述(即模式),
用户级数据库则是用户与数据库的接口,它是概念级数据库的一个子集(外模式)


外模式/模式映象

定义外模式与模式之间的对应关系
每一个外模式都对应一个外模式/模式映象
映象定义通常包含在各自外模式的描述中

保证数据的逻辑独立性
当模式改变时,数据库管理员修改有关的外模式/模式映象,使外模式保持不变
应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。

模式/内模式映象

模式/内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。例如,说明逻辑记录和字段在内部是如何表示的
数据库中模式/内模式映象是唯一的
该映象定义通常包含在模式描述中

保证数据的物理独立性
当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映象,使模式保持不变
应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。

0 0
原创粉丝点击