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−中可用的一些最常用的约束
约束可以在创建表时规定(通过 CREATE TABLE 语句),或者在表创建之后规定(通过 ALTER TABLE 语句)。
每个关系数据库管理系统都存在以下类型的数据完整性:
实体完整性−表中没有重复行。
域完整性−通过限制值的类型、格式或范围来强制执行给定列的有效条目。
引用完整性−不能删除其他记录使用的行。
用户定义的完整性−强制执行一些不属于实体、域或引用完整性的特定业务规则。
数据库规范化是在数据库中有效地组织数据的过程。这个规范化过程有两个原因:
这两个原因都是值得追求的目标,因为它们减少了数据库消耗的空间量,并确保了数据的逻辑存储。
规范化由一系列指导原则组成,有助于指导您创建良好的数据库结构。
规范化指导原则称为范式,范式的目的是组织数据库结构,使其符合第一范式、第二范式和第三范式的规则。
你可以更长远的去选择第四范式,第五范式,等等,但一般来说,第三范式已经足够了。
第一范式(1NF)
第二范式(2NF)
第三范式(3NF)