数据库概论

发布于:2025-02-11 ⋅ 阅读:(45) ⋅ 点赞:(0)

目录

1、数据库管理系统(DBMS)

1.1 DBMS的主要功能

1. 数据库的定义功能

2. 数据库的操纵功能

3. 数据库的运行控制功能

4. 数据库的维护

5. 数据字典(Data Dictionary,DD)

2、数据模型

2.1 信息和数据(了解)

2.2 数据模型的三个层次

2.3 信息世界中的基本概念

1. 实体(entity)

2. 属性(attribute)

3. 实体型

4. 实体集

5. 联系

2.4 E-R图

2.5 关系数据模型

1. 关系

2. 属性

3. 域(domain)

4. 元组

5. 分量

6. 码(key),主码(primary key),外码(foreign key)

2.6 E-R图向关系模型的转换

1. 原则

2. 具体方法

1:1

1:N

N:M

3 数据库系统的模式结构

3.1 三级模式两级映射


1、数据库管理系统(DBMS)

1.1 DBMS的主要功能

1. 数据库的定义功能

DBMS提供数据定义语言(data definition language,DDL)定义数据库的结构

createalterdrop

注意:对于这些关键字不区分大小写

2. 数据库的操纵功能

DBMS提供数据操纵语言(data manipulation language,DML)实现对数据库中数据的操作

select(DQL),insertupdatedelete

3. 数据库的运行控制功能

数据安全性控制,DCL(grant(授权),revoke(撤回),deny(拒绝)) 

数据完整性控制,约束,触发器等等。

多用户环境下的并发控制,并发(在宏观上多个事件同一时间间隔内发生,而在微观上,这些事件可能会交替进行不一定同时进行。它强调的是任务之间的交替执行和系统的多任务处理能力,如:单个CPU,宏观上,在一段时间间隔中,处理不同的事情,微观上,还是交替执行的)如:现在仅有一张火车票,要处理好,多个用户去抢这张票。感谢时代楷模单杏花。

数据库的恢复,数据库需要备份与还原

4. 数据库的维护

数据库的初始数据的载入、转换、转储、数据库的重组和性能监视、分析等

5. 数据字典(Data Dictionary,DD)

主要作用:供数据库管理系统(DBMS)快速查找有关对象的信息

2、数据模型

数据模型是对客观事物及其联系的数据描述

2.1 信息和数据(了解)

数据:对信息的符号化表示,即用一定的符号表示信息。

信息是数据的内涵,数据是信息的载体。

2.2 数据模型的三个层次

概念数据模型(概念模型),现实世界->概念世界,如:E-R模型

逻辑数据模型(逻辑模型),概念世界->信息世界,如:层次模型,网状模型,关系模型(二维表主流)

物理数据模型(物理模型),信息世界->机器世界,在计算机上的物理结构

2.3 信息世界中的基本概念

1. 实体(entity)

客观存在可相互区分的事物成为实体

2. 属性(attribute)

实体所具有的某一特性

3. 实体型

同类实体的一个抽象概念,如:学生(学号,姓名,性别,年龄)

4. 实体集

同型实体的集合

5. 联系

常见的联系,1:1,1:N,M:N

2.4 E-R图

实体(集):用矩形表示,矩形内写实体(集)名

属性:用椭圆表示,椭圆内写属性名,用无向边与对应实体相连

联系:用菱形表示,菱形内写联系名,用无向边与有关实体相连,并在无向边上标上联系(1:1,1:N,M:N)

注意:联系也可以有属性

例:为仓库的管理设计一个E-R图。

仓库主要管理零件采购和供应。仓库根据需要向的供应商订购零件,仓库需要向许多工程提供零件。

2.5 关系数据模型

逻辑结构是一张二维表

如:

学号 姓名 性别 年龄 班级 联系方式
001 张三 16 高一(1)班 138xxxx5678
002 李四 17 高一(2)班 139xxxx1234
003 王五 15 高一(1)班 137xxxx9876
004 赵六 16 高一(3)班 136xxxx5432
005 孙七 17 高一(2)班 135xxxx7654
1. 关系

对应通常说的二维表

如:上面的关系为,学生(学号,姓名,性别,年龄,班级,联系方式)

2. 属性

表中的一列

3. 域(domain)

属性(表中一列)集合

4. 元组

表中的一行

5. 分量

元组中一个属性值

6. 码(key),主码(primary key),外码(foreign key)

码(key):能唯一标识实体属性属性集合,并且不能含有冗余属性

全码:整个属性组作为码。

候选码(candidate key):码的集合。

主码(primary key):候选码中选择一个合适的码

注意:设置为主码,保证主码不为空。(实体完整性)

外码(foreign key):A关系中的属性(集)(可以是一个普通的属性,主码,主码的一部分),这个属性B关系中是主码

注意:设置为外码,要保证A外码的域包含于B中主码的域,即A中外码的值要在B主码中都能找到

主属性:所有候选码的属性都是主属性。外码的属性不一定是主属性。(参照完整性)

非主属性:不是候选码中的其他属性。

2.6 E-R图向关系模型的转换

1. 原则

E-R图中的每一个实体->一个关系(应包括对应实体的全部属性确定主码)

E-R图中的联系的属性->根据联系方式进行实现

2. 具体方法
1:1

两个实体1:1,分别转化为关系,并在一个关系中 加入 联系的属性另一个关系的主码

如:

Student表

Student(StudentID(主码),Name,Age)

StudentIDCard表

联系没有属性,所有没有加到StudentIDCard表中,已经有Student表中的主码,并作为外码。

StudentIDCard(StudentID(主码,外码),IDCardNumber,IssueDate)

1:N

两个实体

两个实体1:N,将“1”的主码(作为外码)和联系的属性 加入“N”的关系中

学生表:

联系没有属性,将班级的主码加入到学生表中,作为外码。

学生(学号(主码),姓名,性别,班号(外码))

班级表:

班级(班号(主码),班级名,人数)

注意:1:N,数量这个属性,不是在联系上,而是放在“1”中。

一个实体

一个实体1:N,在这个实体的关系多设置一个属性(表示与该个体相联系的上级个体的主码),作为外码

一个领导者职工领导多个职工,职工只能被一个领导者职工领导

职工(工号(主码),姓名,年龄,性别,职称,工资,领导者工号(外码))

N:M

两个实体N:M联系单独成一个关系,并加上双方实体的主码,作为外码。

学生表:

学生(学号(主码),姓名,年龄,性别)

课程表:

课程(课程号(主码),课程名,学时数)

选修表:

选修(学号(外码),课程号(外码),成绩),(学号,课程号)一起为主码。

3 数据库系统的模式结构

3.1 三级模式两级映射

内模式(存储模式),是数据库物理结构和存储方式的描述。一个数据库只有一个内模式

模式(逻辑模式),是数据库中全体数据逻辑结构和特征的描述,是所有用户的公共数据视图。

一个数据库只有一个模式

外模式(子模式,用户模式),是数据库用户 看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图。一个数据库可多个外模式

数据库的存储结构改变,数据库管理员对内模式/模式映像作相应改变,可以使模式保持不变,从而保证了数据的物理独立性。(存储结构和物理有关)

模式改变,数据库管理员对各个外模式/模式映像作相应改变,可以使外模式保持不变,从而应用程序不必修改,保证了数据的逻辑独立性


网站公告

今日签到

点亮在社区的每一天
去签到