这是我参与[第五届青训营]伴学笔记创作活动的第15天。
什么是RDBMS?
RDBMS 是 Relational Database Management System 的缩写,中文译为“关系数据库管理系统”,它是 SQL 语言以及所有现代数据库系统(例如 SQL Server、DB2、Oracle、MySQL 和 Microsoft Access)的基础。
关系数据库管理系统(RDBMS)是一种基于 E. F. Codd 发明的关系模型的数据库管理系统(DBMS)。
RDBMS事务ACID
事务(Transaction):是由一组SQL语句组成的一个程序执行单元(Unit),它需要满足ACID特性。
- 原子性(Atomicity):事务是一个不可再分割的工作单元,事务中的操作要么都发生,要么都不发生。
- 一致性(Consistency):数据库事务不能破坏关系数据的完整性以及业务逻辑上的一致性。
- 隔离性(solation):多个事务并发访问时,事务之间是隔离的,一个事务不应该影响其它事务运行效果。
- 持久性(Durability):在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。
数据库规范化是在数据库中有效地组织数据的过程。这个规范化过程有两个原因:
消除冗余数据,例如,将相同的数据存储在多个表中。 确保数据依赖关系是有意义的。 这两个原因都是值得追求的目标,因为它们减少了数据库消耗的空间量,并确保了数据的逻辑存储。
规范化由一系列指导原则组成,有助于指导您创建良好的数据库结构。
规范化指导原则称为范式,范式的目的是组织数据库结构,使其符合第一范式、第二范式和第三范式的规则。
RDBMS与DBMS区别:
RDBMS是关系数据库管理系统 DBMS是数据库管理系统,这个概念更大一些
RDBMS强调relationship between tables. 即表与表之间是要有关系的。 而DBMS则可以不存在表与表之间的关系。
当大量的数据需要保存和维护的时候就需要用到RDBMS。一个关系数据模型是需要包含indexes,PK,FK,table和table间的关系。当然DBMS和RDBMS都可以用FK,只是对于RDBMS来说,FK是必须的,而且DBMS则不是。
DBMS可以接受没有任何关系的数据,而RDBMS则只接受有关系的数据。 DBMS更加适用于小型的商业应用,即处理并不庞大的数据, 而RDBMS则是用来出来更加复杂的应用,即更庞大的数据,以及更多的数据关系。