数据库原理—关系数据库

简介: 数据库原理—关系数据库

一、思维导图:

二、基本知识点:

1、关系数据库结构

(1)域:一组具有相同数据类型的值的集合(如整数、实数、指定长度的字符串集合)

(2)笛卡尔积运算:假设两个集合D1和D2,其中D1={2,4},D2={1,3,5},这两个集合的笛卡尔积D1×D2={(2,1),(2,3),(2,5),(4,1),(4,3),(4,5)}

(3)笛卡尔积:可表示一张二维表,表中每一行一个元组,表中每一列一个域

2、关系的定义

(1)关系: D1******Dn中有关系的行形成的一个子集称为D1******Dn的一个关系,用R(D1,D2…Dn)表示,R表示关系名,n表示关系的元或目

(2)关系的性质:同一列的数据类型必须一致;不同的列可出自同一个域;列的顺序无所谓,行的顺序也无所谓;任意两个元组的候选码不能相同;关系中属性不可再分,满足原子性

(3)关系模式(作用:定义表结构的):关系模式是型,静态的、稳定的,关系是值,是关系模式某一时刻的状态,所以关系模式是对关系的描述;

(4)关系模式的结构化表示:R(U,D,dom,F),R表示关系名;U是组成该关系的属性名集合;D是属性组U中属性来自的域;dom是属性向域的映像关系;F是属性间的数据依赖关系集合

3、关系操作

(1)查询操作:选择、投影、并、差、广义笛卡尔积、交、连接、除…

(2)更新操作:插入、删除、修改

(3)关键码:

3、关系的完整性

(1)数据库的完整性:数据的正确性和有效性,数据是符合现实世界语义,反应当时实际情况

(2)实体完整性:基本关系的所有主属性都不能取空值【主键】。参照完整性:存在两个关系(表)R和S,F是一个属性或者属性集合;F属于R但不是R的主键,同时F属于S并且F是S的主键,则称F是基本关系R的外码,R为外键表,S为主键表【外键】。用户定义完整性:针对某一具体关系数据库的约束条件,反应某一具体应用所涉及的数据必须满足语义要求(没有统一要求,由DBS创建)【NULL…】。

4、传统关系运算:

(1)并运算:关系R和S具有相同的关系模式(属性相同,域相同)例子: (2)差运算: R和S具有相同的关系模式,R和S的差是有属于关系R但不属于关系S的元素构成的集合

例子:

(3)交运算:R和S具有相同的关系模式,R和S的交是属于集合R有属于集合S的元素组成的集合

例子: (4)广义笛卡尔积:R:n个关系,K1个元组;S:m个关系,K2个元组
R×S的列:组成新的关系有(m+n)列
R×S的行:组成新的关系有(K1×K2)行
例子:

5、专门的关系运算:

(1)投影:(对关系进行垂直分割) 关系R上的投影是R上选择出若干个属性列组成新的关系(从表中选择列)
例子: (2)选择:(对关系进行水平分割): 挑选满足条件的行

例子:

(3)连接: 两个关系的笛卡尔积中选取满足条件的元组(两个关系先做笛卡尔积,在用条件筛选出满足条件的行)

例子: 【1】等值连接:


例子:

【2】自然连接:两张表中属性名相同的值也相同的进行组合构成一个新的关系

例子:

(4)除法:

象集:给定关系R(A,B),A,B为属性组。表示A属性上a在B上的分量

例如:

除运算步骤:

stop1:找到两个关系中属性相同的列

step2:R/S就是相同的列中属于R但不属于S的列

step3:找到R中列的元素所对应的象集,和S在和R相同列的投影

step4:象集包含S中得到的投影的元素就是除法的结果

例子:  

相关实践学习
体验RDS通用云盘核心能力
本次实验任务是创建一个云数据库RDS MySQL(通用云盘),并通过云服务器ECS对RDS MySQL实例进行压测,体验IO加速和IO突发带来的性能提升;并通过DMS执行DDL,将数据归档到OSS,再结合云盘缩容,体验数据归档带来的成本优势。
相关文章
|
1月前
|
缓存 算法 关系型数据库
Mysql(3)—数据库相关概念及工作原理
数据库是一个以某种有组织的方式存储的数据集合。它通常包括一个或多个不同的主题领域或用途的数据表。
49 5
Mysql(3)—数据库相关概念及工作原理
|
14天前
|
存储 Java 关系型数据库
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践,包括连接创建、分配、复用和释放等操作,并通过电商应用实例展示了如何选择合适的连接池库(如HikariCP)和配置参数,实现高效、稳定的数据库连接管理。
31 2
|
5月前
|
存储 关系型数据库 MySQL
MySQL数据库进阶第六篇(InnoDB引擎架构,事务原理,MVCC)
MySQL数据库进阶第六篇(InnoDB引擎架构,事务原理,MVCC)
|
1月前
|
SQL 关系型数据库 数据库
SQL数据库:核心原理与应用实践
随着信息技术的飞速发展,数据库管理系统已成为各类组织和企业中不可或缺的核心组件。在众多数据库管理系统中,SQL(结构化查询语言)数据库以其强大的数据管理能力和灵活性,广泛应用于各类业务场景。本文将深入探讨SQL数据库的基本原理、核心特性以及实际应用。一、SQL数据库概述SQL数据库是一种关系型数据库
45 5
|
1月前
|
SQL 关系型数据库 MySQL
sql注入原理与实战(三)数据库操作
sql注入原理与实战(三)数据库操作
sql注入原理与实战(三)数据库操作
|
1月前
|
SQL 存储 Java
sql注入原理与实战(二)数据库原理
sql注入原理与实战(二)数据库原理
|
3月前
|
消息中间件 Kafka 数据库
深入理解Kafka的数据一致性原理及其与传统数据库的对比
【8月更文挑战第24天】在分布式系统中,确保数据一致性至关重要。传统数据库利用ACID原则保障事务完整性;相比之下,Kafka作为高性能消息队列,采用副本机制与日志结构确保数据一致性。通过同步所有副本上的数据、维护消息顺序以及支持生产者的幂等性操作,Kafka在不牺牲性能的前提下实现了高可用性和数据可靠性。这些特性使Kafka成为处理大规模数据流的理想工具。
77 6
|
4月前
|
存储 SQL 关系型数据库
(六)MySQL索引原理篇:深入数据库底层揭开索引机制的神秘面纱!
《索引原理篇》它现在终于来了!但对于索引原理及底层实现,相信大家多多少少都有了解过,毕竟这也是面试过程中出现次数较为频繁的一个技术点。在本文中就来一窥`MySQL`索引底层的神秘面纱!
323 5
|
4月前
|
SQL 存储 安全
SQL数据库:核心原理、应用实践与未来展望
在电子商务领域,SQL数据库用于存储商品信息、用户信息、订单信息等。通过SQL数据库,电商平台可以实现商品的快速检索、用户行为的跟踪分析、订单状态的实时更新等功能,提升用户体验和运营效率。
|
3月前
|
存储 NoSQL 关系型数据库
Web中的数据库:原理、应用与代码实现
Web中的数据库:原理、应用与代码实现
106 0