0x01. 基本概念
SQL:Structured English Query Language
1. 数据 Data
数据(Data):描述事物的符号记录;数据内容是事物特性的反应或描述;数据是符号的集合。
- 数据是数据库中存储的基本对象。
- 数据的最小存取单位是记录。
- 符号:不仅指数字、字母、文字和其他特殊字符,且包括图形、图像、声音等多媒体数据。
- 记录:不仅指写在纸上,而且包括记录在各种介质上。
2. 数据库DB(Database)
数据库(Database,简称 DB):长期储存在计算机内、有组织的、可共享的大量数据集合。
3. 数据库管理系统DBMS( Database Management System)
数据库管理系统(Database Management System,简称 DBMS):用户与操作系统之间的一层数据管理软件。 用途:科学地组织和存储数据、高效地获取和维护数据。
4. 数据库系统DBS(Database System)
数据库系统(Database System,简称 DBS):计算机系统中引入数据库后的系统构成。
- 在不引起混淆的情况下常常把数据库系统简称为数据库。
数据库系统:
数据的管理者:DBMS
数据面向的对象:现实世界
数据的结构化:整体结构化
数据的共享程度:共享性高
数据的独立性:高度的物理独立性和一定的逻辑独立性
数据控制能力:由DBMS统一管理和控制
数据库特点:
数据结构化
数据的共享性高、冗余度低、易扩充
数据独立性高
5.数据模型
数据模型:用来抽象、表示和处理现实世界中的数据和信息的工具;
通俗地讲数据模型就是现实世界的模拟。
数据模型应满足三方面要求
能比较真实地模拟现实世界
容易为人所理解
便于在计算机上实现
数据模型的组成要素
数据结构:数据库中对象(Object)类型的集合。(静态特性)
数据操作:对数据库中对象的实例允许执行的操作的集合。(动态特性)
数据的约束条件:一组完整性规则的集合,反映数据及其联系所具有的 制约和依存规则,以保证数据的正确,有效和相容。
常用数据模型
非关系模型
- 层次模型(Hierarchical Model)
- 网状模型(Network Model )
- 数据结构:以基本层次联系为基本单位
- 基本层次联系:两个记录以及它们之间的一对多(包括一对一)的联系
关系模型(Relational Model)
- 数据结构:表
面向对象模型(Object Oriented Model)
- 数据结构:对象
对象关系模型(Object Relational Model)
6. 信息世界中的基本概念
实体(Entity):客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。
属性(Attribute):实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。
码(Key):唯一标识实体的属性集称为码。
域(Domain):属性的取值范围称为该属性的域。
实体型(Entity Type):用实体名及其属性名集合来抽象和刻画同类实体称为实体型。
实体集(Entity Set):同型实体的集合称为实体集。
同型实体的取值集合称为实体集(实体值的集合).
联系(Relationship):现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。
eg:举例说明上述基本概念
概念 | 例子 |
---|---|
实体(对象) | 课程 |
属性 | 课程号,课程名,学分 |
码 | 课程号 |
域 | 学分取值范围0-100 |
实体型 | 课程 (课程号,课程名,学分) |
某个实体(实体值) | (”01”,”数据库原理”,”3”) |
实体集(Entity Set) | (”01”,”数据库原理”,”3”)(”02”,”计算机网络”,”2”)…... |
同型实体的取值集合称为实体集(实体值的集合)。
7. 实体-联系方法(E-R 方法,也称为 E-R 模型)
实体型:用矩形表示,矩形框内写明实体名。
属性:用椭圆形表示,并用无向边将其与相应的实体连接起来。
键用下划线表示;
单属性:某个特定的实体在该属性的取值唯一。
表示方法:带有属性名的椭圆形框;
多值属性:某个特定的实体在该属性的取值多于一个。
表示方法:带有属性名的双椭圆形框;
派生属性:可以从其他相关的属性或实体派生出来的属性值。如学生(学号,姓名,平均成绩),选课(学号,课程号,成绩),则平均成绩可由学生所选课程的总成绩除以课程总数来得到。称平均成绩为派生属性,而成绩为基属性,或存储属性;
表示方法:带有属性名的虚椭圆形框;
复合属性:可再分的属性;
8. 关系模型的基本概念
关系(Relation):一个关系对应通常说的一张表。
元组(Tuple):表中的一行即为一个元组。
属性(Attribute):表中的一列即为一个属性,给每一个属性起一个名称即属性名。
码(Key):表中的某个属性组,它可以唯一确定一个元组。
域(Domain):属性的取值范围。
分量:元组中的一个属性值。
关系模式:对关系的描述
关系名(属性1,属性2,…,属性n)
例:学生(学号,姓名,年龄,性别,系,年级)
9. 实体与实体间的联系
- 表示方法:
- 实体型:直接用关系(表)表示。
- 属性:用属性名表示。
- 一对一联系:隐含在实体对应的关系中。
- 一对多联系:隐含在实体对应的关系中。
- 多对多联系:直接用关系表示。
- 1:1联系的转换方法
- 将1:1联系转换为一个独立的关系:与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,且每个实体的码均是该关系的候选码。
- 将1:1联系与某一端实体集所对应的关系合并,则需要在被合并关系中增加属性,其新增的属性为联系本身的属性和与联系相关的另一个实体集的码。