数据库—01、介绍数据库

本文介绍了数据库的基本概念,包括数据、数据库和数据库管理系统的定义,强调了数据库的优点,如数据结构化、高共享性和数据独立性。讨论了关系型数据库与非关系型数据库的特性、优缺点以及适用场景。还涵盖了数据库的架构、SQL语言的功能以及数据库的约束和完整性。此外,提到了ACID原则和数据库的完整性。最后,文章提到了数据库的一些常见约束和术语,并分享了数据库排名的查询地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先今天是9月30号烈士纪念日,让我们一起心存敬畏,缅怀先烈。
然后明天就是国庆了,也祝大家国庆节快乐!
最后来到我们今天的内容,最近工作中用的数据库内容比较多,就打算对数据库及相关的知识进行复习一下,顺便进行总结,写一个关于数据库的系列。

首先我们要知道什么是数据,可能一说到数据每个人都感觉自己知道,但是要说出来,却哑口无言了吧。

名称英文概念
数据Data数据是数据库中存储的基本对象,数据在大多数人的头脑中的第一反应就是数字。其实数字只是一种最简单的数据,是数据的一种传统和狭义的理解。广义的理解,数据的种类很多,文字、图形、图象、声音、等,这些都是数据,存储的方式不一样而已。交流信息,人们需要描述事物。在计算机中,为了存储和处理这些事物,就要抽出这些事物的主要特征组成一个记录来描述。
数据库DataBase 简称 DB存放数据的仓库,仓库位于计算机存储设备上,以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合,用户可以对文件中的数据运行新增、截取、更新、删除等操作。
数据库管理系统DataBase Management System,简称DBMS了解了Data与DB的概念后,如何科学地组织和存储数据,如何高效获取和维护数据成了关键。这就用到了一个系统软件—数据库管理系统。如MySQL、Oracle、SQLite、Access、MS SQL Server。

在这里插入图片描述

数据库(DataBase 简称 DB)

一、优点

1、数据结构化,数据之间具有联系,面向整个系统。
2、数据的共享性高,冗余度低,易扩充。
3、数据独立性高。
4、数据由DBMS统一管理和控制。

二、分类
名称概念优点缺点数据库
关系型数据库建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。1保持数据的一致性(事务处理)2由于以标准化为前提,数据更新的开销很小(相同的字段基本上都只有一处)3可以进行Join等复杂查询1高并发读写差2海量数据的高效率读写慢3具有固定的表结构,因此扩展困难MySQL、Oracle、Microsoft SQL Server、Access及PostgreSQL等
非关系型数据库(简称NOSQL)是基于键值对的对应关系,并且不需要经过SQL层的解析,所以性能非常高。1成本:nosql数据库简单易部署,基本都是开源软件2查询速度:nosql数据库将数据存储于缓存之中,关系型数据库将数据存储在硬盘中,自然查询速度远不及nosql数据库3存储数据的格式:nosql可以存储基础类型以及对象或者是集合等各种格式,而数据库则只支持基础类型4扩展性:基于键值对,数据没有耦合性1不支持 sql 工业标准2不能进行复杂的查询3事务处理能力弱4没有完整性约束,对于复杂业务场景支持较差MongoDB、Cassandra、Redis、HBase、Neo4j、Oracle NoSQL、CouchDB等

非关系型数据库:
非关系型数据库
关系型数据库:
在这里插入图片描述

这里需要给大家补充一下,按照早期的数据库理论,比较流行的数据库模型有三种,分别为层次式数据库网络式数据库关系型数据库(前两者已经基本消失)。而当今的互联网中,最常用的数据库模型主要是两种,即关系型数据库和非关系型数据库。上面总结的是当今比较主要的模型,要了解其它模型可以去搜一下,挺多的。

概念名词解释:
当中有一些名词或者概念,我为大家找了一些写的不错的文章,帮助大家理解。
1高并发
2事务

三、架构

数据库的架构可以大致区分为三个概括层次:内层、概念层和外层。
1、内层(物理数据层):最接近实际存储体,亦即有关数据的实际存储方式。
2、外层(用户数据层):最接近用户,即有关个别用户观看数据的方式。
3、概念层(概念数据层):介于两者之间的间接层

四、SQL

SQL(Structured Query Language 结构化查询语句)是一种特定目的程序语言,用于管理关系数据库管理系统(RDBMS),或在关系流数据管理系统(RDSMS)中进行流处理。SQL基于关系代数和元组关系演算,包括一个数据定义语言和数据操纵语言。SQL的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统。(ANSI,美国国家标准化组织)

看了上面巴拉巴拉一堆概念,最后懵逼的说了一句到底什么SQL?
所以简单点说:是一种数据库查询程序设计语言,用于存取数据以及查询、更新管理关系数据库系统

SQL同时也是数据库脚本文件的扩展名。

SQL语言包含4个部分:

语言关键字操作
数据定义语言(DDL)CREATE、DROP、ALTER等数据库、表、列
数据操作语言(DML)INSERT、UPDATE、DELETE表的数据进行增删改
数据查询语言(DQL)SELECT表中的数据进行查询
数据控制语言(DCL)GRANT、REVOKE、COMMIT、ROLLBACK等定义数据库的访问权限和安全级别,及创建用户

RDBMS:
RDBMS 指的是关系型数据库管理系统。
RDBMS 是 SQL 的基础,同样也是所有现代数据库系统的基础,比如 MS SQL Server, IBM DB2, Oracle, MySQL 以及 Microsoft Access。
RDBMS 中的数据存储在被称为表(tables)的数据库对象中。表是相关的数据项的集合,它由列和行组成。

到这有人会说刚刚有个DBMS现在又来一个RDBMS这有啥区别?
RDBMS是关系数据库管理系统。
DBMS是数据库管理系统,还包括非关系型数据库,这个概念更大一些。

ACID:
是指数据库管理系统(DBMS)在写入或更新资料的过程中,为保证事务(transaction)是正确可靠的,所必须具备的四个特性:原子性(atomicity,或称不可分割性)、一致性(consistency)、隔离性(isolation,又称独立性)、持久性(durability)。

名称作用
A – Atomicity – 原子性一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有被执行过一样。
C – Consistency – 一致性在事务开始之前和事务结束以后,数据库的完整性没有被破坏。这表示写入的资料必须完全符合所有的预设规则,这包含资料的精确度、串联性以及后续数据库可以自发性地完成预定的工作。
I – Isolation – 隔离性数据库允许多个并发事务同时对其数据进行读写和修改的能力,隔离性可以防止多个事务并发执行时由于交叉执行而导致数据的不一致。事务隔离分为不同级别,包括读未提交(Read uncommitted)、读提交(read committed)、可重复读(repeatable read)和串行化(Serializable)。
D – Durability – 持久性事务处理结束后,对数据的修改就是永久的,即便系统故障也不会丢失。

关系型数据库严格遵循ACID理论。但当数据库要开始满足横向扩展、高可用、模式自由等需求时,需要对ACID理论进行取舍,不能严格遵循ACID。以CAP理论和BASE理论为基础的NoSQL数据库开始出现。

五、约束

1、主键约束:在表中定义一个主键来惟一标识表中的每行记录
特点:每个表中只能有一个主键,主键可是一列,也可是多列;主键不能为空;主键值不能重复

2、UNIQUE约束:它主要用来限制表的非主键列中的值不能重复。
特点:一个表中可以定义多个惟一约束

3、NOT NULL约束:它用来设定某列值不能为空。
特点:如果设定某列为NOT NULL,则在添加记录时,则此列必须插入数据。

4、CHECK约束:它使用逻辑表达式来限制表中的列可以接受哪些数据值。
例如:成绩值应该在0-100之间,则可以为成绩字段创建CHECK约束,使取值在正常范围内。

5、DEFAULT约束:它为表中某列建立一个默认值,当为表中添加记录时,如果没有提供输入值,则自动以默认值赋给该列。
特点:默认值可以为常量、函数或表达式。使用默认值可以提高数据输入的速度。

6、FOREIGN KEY约束
外键:是指一个表中的一列或列组合,它虽不是该表的主键,但是另一个表的主键。
特点:实现两表之间相关数据的一致性。

六、术语

数据库:就是一些关联表的一个集合。
数据表:表是数据的矩阵。在一个数据库中的表看起来像一个表格。
:每一列数据。
行(记录):每一行数据。
字段:即表头
冗余:字面意思就是数据重复,关系数据库中的数据冗余主要是指关系数据库中同一信息数据的重复存贮。
主键:不能够重复,不能为空,如果为空,则称作失去了实体完整性。你可以使用主键来查询数据。
外键:如果一个表格中的数据是来源于另一个表,那么称这个列为外键。外键错误称作失去了引用完整性
复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引。
索引:使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。
完整性:实际上指的是数据的正确性。数据存在错误叫做数据失去了完整性。

最后给大家一个可以查看各种数据库排名的地址:
排名
在这里插入图片描述

因为是关于数据库的大体介绍,而且是根据菜鸡作者自己知道,和查询其他资料,然后进行的总结,可能有很多不足或者术语有问题、理解有误,请大家指正,谢谢了 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值