SQLRDBMS概念
SQL RDBMS 概念
RDBMS是关系数据库管理系统(Relational Database Management System)的缩写。
RDBMS是SQL的基础,也是所有现代数据库系统(如MS SQL Server、IBMDB2、Oracle、MySQL和MicrosoftAccess)的基础。
关系数据库管理系统(Relational Database Management System,RDBMS)是一种基于E.F.Codd提出的关系模型的数据库管理系统。
什么是表?
RDBMS中的数据存储在称为表的数据库对象中。这个表基本上是一个相关数据条目的集合,它由许多列和行组成。请记住,表是关系数据库中最常见和最简单的数据存储形式。
下面的程序是Customers表的一个示例
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
什么是字段?
每个表都被分解成更小的实体,称为字段。Customers表中的字段由ID、姓名、年龄、地址和薪资组成。
字段是表中的列,用于维护有关表中每条记录的特定信息。
什么是记录或者行数据?
记录也称为数据行,即表中存在的每个单独的条目。例如,上面的Customers表中有7条记录。下面是Customers表中的单行数据或记录。
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
+----+----------+-----+-----------+----------+
记录是表中的水平实体。
什么是列?
列是表中的垂直实体,其中包含与表中特定字段关联的所有信息。
例如,Customers表中的一列是Address,它表示位置描述,如下所示:
+-----------+
| ADDRESS |
+-----------+
| Ahmedabad |
| Delhi |
| Kota |
| Mumbai |
| Bhopal |
| MP |
| Indore |
+----+------+
什么是空值?
表中的空值是显示为空的字段中的值,这意味着具有空值的字段是没有值的字段。
非常重要的一点是空值不一样于零值或包含空格的字段。具有空值的字段是在创建记录时留空的字段。
SQL约束
约束是在表上的数据列上强制执行的规则。它们用于限制可以进入表中的数据类型。
这确保了数据库中数据的准确性和可靠性。
约束可以是列级别,也可以是表级别。列级约束仅应用于一列,而表级约束则应用于整个表。
以下是sql−中可用的一些最常用的约束
- NOT NULL 约束:保证列中数据不能有 NULL 值
- DEFAULT 约束:提供该列数据未指定时所采用的默认值
- UNIQUE 约束:保证列中的所有数据各不相同
- 主键约束:唯一标识数据表中的行/记录
- 外键约束:唯一标识其他表中的一条行/记录
- CHECK 约束:此约束保证列中的所有值满足某一条件
- 索引:用于在数据库中快速创建或检索数据
约束可以在创建表时规定(通过 CREATE TABLE 语句),或者在表创建之后规定(通过 ALTER TABLE 语句)。
数据完整性
每个关系数据库管理系统都存在以下类型的数据完整性:
实体完整性−表中没有重复行。
域完整性−通过限制值的类型、格式或范围来强制执行给定列的有效条目。
引用完整性−不能删除其他记录使用的行。
用户定义的完整性−强制执行一些不属于实体、域或引用完整性的特定业务规则。
数据库规范化
数据库规范化是在数据库中有效地组织数据的过程。这个规范化过程有两个原因:
- 消除冗余数据,例如,将相同的数据存储在多个表中。
- 确保数据依赖关系是有意义的。
这两个原因都是值得追求的目标,因为它们减少了数据库消耗的空间量,并确保了数据的逻辑存储。
规范化由一系列指导原则组成,有助于指导您创建良好的数据库结构。
规范化指导原则称为范式,范式的目的是组织数据库结构,使其符合第一范式、第二范式和第三范式的规则。
你可以更长远的去选择第四范式,第五范式,等等,但通常来说,第三范式已经足够了。
第一范式(1NF)
第二范式(2NF)
第三范式(3NF)
原文链接: https://www.yukx.com/moran/article/details/961.html 优科学习网SQLRDBMS概念
-
mysql只支持一种join算法:Nested-LoopJoin(嵌套循环连接),但Nested-LoopJoin有三种变种:SimpleNested-LoopJoin,IndexNested-LoopJoin,BlockNested-LoopJoin(简单-索引-缓冲区)原理:1.SimpleNe
-
redis是一个内存数据库,一旦断电或服务器进程退出,内存数据库中的数据将全部丢失,所以需要redis持久化 redis持久化就是把数据保存在磁盘上,利用永久性存储介质将数据保存,在特定的时间将保存的数据进行恢复的工作机制redis提供两种持久化机制RDB:存储数据结果,关注点在数据AOF:存储操作
-
通过SQL的执行过程来介绍MySQL的基础结构. 首先有一个user_info表,表里有一个id字段,执行下面这条查询语句:Select * form user_info where i
-
索引(Index)是帮助MySQL高效获取数据的数据结构,索引的目的在于提高查询效率,就像字典和书籍的目录一样,有了目录,可以帮助你快速查找你需要的内容。可以理解为一个排好序的快速查找数据结构。也就是
-
说到数据库事务,大家脑子里一定很容易蹦出一堆事务的相关知识,如事务的ACID特性,隔离级别,解决的问题(脏读,不可重复读,幻读)等等,但是可能很少有人真正的清楚事务的这些特性又是怎么实现的,为什么要有四个隔离级别。今天我们就先来聊聊MySQL中事务的隔离性的实现原理,后续还会继续出文章分析其他特性的
-
前面我们系统了解了一个查询语句的执行流程,并介绍了执行过程中涉及的处理模块。相信你还记得,一条查询语句的执行过程一般是经过连接器、分析器、优化器、执行器等功能模块,最后到达存储引擎。那么,一条更新语句