个人主页 :阿然成长日记 点击可跳转
个人专栏: 数据结构与算法C语言进阶
不能则学,不知则问,耻于问人,决无长进

文章目录

  • 一、何为数据库?
  • 二、数据库的发展历程
  • 三、⚓️数据库的分类
    • 1.关系数据库:
    • 2.非关系型数据库(NoSQL)
    • 3.键值数据库
  • 四、什么是数据库管理系统 (DBMS)?
  • 五、 常见数据库
    • 1️⃣ 我们经常使用必会的==MySQL数据库==就是一个关系型数据库。
    • 2️⃣SqlServer数据库
    • 3️⃣ Oracle数据库
    • 六、数据库的三级模式和两层映像
      • 三级模式:
      • 两层映像:
  • 七、什么是SQL语句
    • 1.简介
    • 2.SQL
      • 1)数据定义语言(Data Definition Language,`DDL`)
      • 2)数据操作语言(Data Manipulation Language,`DML`)
      • 3)数据查询语言(Data Query Language,`DQL`)
      • 4)数据控制语言(Data Control Language,`DCL`)

一、何为数据库?

数据库是结构化信息或数据的有序集合,一般以电子形式存储在计算机系统中。通常由数据库管理系统(Database Management System,简称DBMS) 来控制。在现实中由1.数据、2.DBMS,3.及关联应用一起被称为数据库系统通常简称为数据库。数据库又分很多类型,我们最常使用的MySQL只是一种关系型的数据库。

1️⃣ 数据:数据库中存储的基本对象,描述一个事物的符号记录,数据和其语义不可分开说

2️⃣ 数据库(DB):是长期储存在计算机内、有组织的、可共享的大量数据的集合。

3️⃣ 数据库管理系统:一个管理数据的软件

❗️数据库的本质就是一个个文件。

二、数据库的发展历程

数据库由1960年代初诞生至今,数据库已经发生了翻天覆地的变化。最初,人们使用分层数据库(树形模型,仅支持一对多关系)和网络数据库(更加灵活,支持多种关系)这样的导航数据库来存储和操作数据。这些早期系统虽然简单,但缺乏灵活性。 20 世纪 80 年代,关系数据库开始兴起;
1990年,面向对象的数据库开始成为主流 。最近,随着互联网的快速发展,为了更快速地处理非结构化数据,NoSQL 数据库应运而生。现在,云数据库和自治驾驶数据库在数据收集、存储、管理和利用方面正不断取得新的突破。

三、⚓️数据库的分类

目前数据库类型大致分为

1.关系数据库:

如:MySQL、MariaDB、Percona Server(MySQL的代替品·)、PostgreSQL、Microsoft
Access、Microsoft SQL Server、Google Fusion
Tables、FileMaker、Oracle数据库、Sybase、dBASE、Clipper、FoxPro、foshub。

2.非关系型数据库(NoSQL)

BigTable(Google)、Cassandra、MongoDB、CouchDB。

3.键值数据库

Apache Cassandra(为Facebook所使用):高度可扩展、Dynamo、LevelDB(Google)

四、什么是数据库管理系统 (DBMS)?

数据库通常离不开完备的数据库软件程序,也就是数据库管理系统 (DBMS) 。DBMS 充当数据库与其用户或程序之间的接口,允许用户检索、更新和管理信息的组织和优化方式。此外,DBMS
有助于监督和控制数据库,提供各种管理操作,例如性能监视、调优、备份和恢复

常见的数据库软件或 DBMS 有 MySQL、Microsoft Access、Microsoft SQL Server、FileMaker Pro、Oracle Database 和 dBASE。

五、 常见数据库

1️⃣ 我们经常使用必会的MySQL数据库就是一个关系型数据库。

这款数据库是一款小型数据库管理系统的数据库,其开发公司是瑞典MySQLAB公司。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

2️⃣SqlServer数据库

这款数据库的特点是真正的客户/服务器体系结构,并且出十是图形化的用户界面,使数据库管理方式更加直观和简单。它还提供了丰富的编程接口工具为用户进行程序设计提供了更大的选择余。在使用上也是非常广泛的。

3️⃣ Oracle数据库

这是一款比较典型的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。

六、数据库的三级模式和两层映像

三级模式:

1️⃣ 外模式:用户(包括应用程序员和最终用户)所能看到和处理的局部数据的逻辑结构和特征描述。
2️⃣模式 ( 逻辑模式 ):从全局角度理解、管理的数据的结构描述,还包含了相应的关联约束。 一个数据库只能有一个逻辑模式。
3️⃣ 内模式(存储模式):是数据物理结构和存储方式的描述,包含存储路径、存储方式、索引方式等。一个系统只有一个内模式。

两层映像:

三层结构两级映射保证了数据的独立性

逻辑独立性 用户的应用程序与数据库的逻辑结构相互独立,数据的逻辑结构改变不会影响程序。 由外模式/模式映像保证物理独立性用户的应用程序与磁盘上的数据库文件相互独立,物理存储改变并不改变程序模式/内模式映像保证物理独立性

七、什么是SQL语句

1.简介

对数据库进行查询和修改操作的语言叫做 SQLStructured Query anguage,构化查询语言)。
SQL 是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
SQL 语言是目前广泛使用的关系数据库标准语言,是各种数据库交互方式的基础。

有趣的是著名的大型商用数据库Oracle、DB2、Sybase、SQL Server, 开源的数据库PostgreSQL、MySQL,甚至一些小型的数据库 Access 等都支持 SQL。近些年蓬勃发展的 NoSQL 系统最初是宣称不再需要 SQL 的,后来也不得不修正为 Not Only SQL,来拥抱 SQL。

2.SQL

SQL 包含以下 4 部分:

1)数据定义语言(Data Definition Language,DDL

用来创建或删除数据库以及表等对象,主要包含以下几种命令:
DROP:删除数据库和表等对象
CREATE:创建数据库和表等对象
ALTER:修改数据库和表等对象的结构

2)数据操作语言(Data Manipulation Language,DML

用来变更表中的记录,主要包含以下几种命令:
SELECT:查询表中的数据
INSERT:向表中插入新数据
UPDATE:更新表中的数据
DELETE:删除表中的数据

3)数据查询语言(Data Query Language,DQL

用来查询表中的记录,主要包含 SELECT 命令,来查询表中的数据。

4)数据控制语言(Data Control Language,DCL

用来确认或者取消对数据库中的数据进行的变更。除此之外,还可以对数据库中的用户设定权限。主要包含以下几种命令:
GRANT:赋予用户操作权限
REVOKE:取消用户的操作权限
COMMIT:确认对数据库中的数据进行的变更
ROLLBACK:取消对数据库中的数据进行的变更

在后续博客中会集中讲解SQL语句,它是数据库学习的重中之重