数据库相关概念

h7mlmysqlmysql大约 3 分钟

数据库相关概念

今日目标:

  • 完成 MySQL 的安装及登陆基本操作
  • 能通过 SQL 对数据库进行 CRUD
  • 能通过 SQL 对表进行 CRUD
  • 能通过 SQL 对数据进行 CRUD

以前我们做系统,数据持久化的存储采用的是文件存储。存储到文件中可以达到系统关闭数据不会丢失的效果,当然文件存储也有它的弊端。

假设在文件中存储以下的数据:

姓名	年龄	性别	住址
张三	23	男	北京西三旗
李四	24	女	北京西二旗
王五	25	男	西安软件新城

现要修改李四这条数据的性别数据改为男,我们现学习的 IO 技术可以通过将所有的数据读取到内存中,然后进行修改再存到该文件中。通过这种方式操作存在很大问题,现在只有三条数据,如果文件中存储 1T 的数据,那么就会发现内存根本就存储不了。

现需要既能持久化存储数据,也要能避免上述问题的技术使用在我们的系统中。数据库就是这样的一门技术。

数据库

  • ==存储和管理数据的仓库,数据是有组织的进行存储。==

  • 数据库英文名是 DataBase,简称 DB。

数据库就是将数据存储在硬盘上,可以达到持久化存储的效果。那又是如何解决上述问题的?使用数据库管理系统。

数据库管理系统

  • ==管理数据库的大型软件==
  • 英文:DataBase Management System,简称 DBMS

在电脑上安装了数据库管理系统后,就可以通过数据库管理系统创建数据库来存储数据,也可以通过该系统对数据库中的数据进行数据的增删改查相关的操作。我们平时说的 MySQL 数据库其实是 MySQL 数据库管理系统。

image-20220910091042576
image-20220910091042576

通过上面的描述,大家应该已经知道了 数据库管理系统数据库 的关系。那么有有哪些常见的数据库管理系统呢?

常见的数据库管理系统

image-20220910091039354
image-20220910091039354

接下来对上面列举的数据库管理系统进行简单的介绍:

  • Oracle:收费的大型数据库,Oracle 公司的产品
  • ==MySQL==: 开源免费的中小型数据库。后来 Sun 公司收购了 MySQL,而 Sun 公司又被 Oracle 收购
  • SQL Server:MicroSoft 公司收费的中型的数据库。C#、.net 等语言常使用
  • PostgreSQL:开源免费中小型的数据库
  • DB2:IBM 公司的大型收费数据库产品
  • SQLite:嵌入式的微型数据库。如:作为 Android 内置数据库
  • MariaDB:开源免费中小型的数据库

我们课程上学习的是 MySQL 数据库管理系统,PostgreSQL 在一些公司也有使用,此时大家肯定会想以后在公司中如果使用我们没有学习过程的 PostgreSQL 数据库管理系统怎么办?这点大家大可不必担心,如下图所示:

image-20220910091035909
image-20220910091035909

我们可以通过数据库管理系统操作数据库,对数据库中的数据进行增删改查操作,而怎么样让用户跟数据库管理系统打交道呢?就可以通过一门编程语言(SQL)来实现。

SQL

  • 英文:Structured Query Language,简称 SQL,结构化查询语言
  • 操作关系型数据库的编程语言
  • 定义操作所有关系型数据库的统一标准,可以使用 SQL 操作所有的关系型数据库管理系统,以后工作中如果使用到了其他的数据库管理系统,也同样的使用 SQL 来操作。