数据库基础回顾

58 阅读7分钟

我正在参加「掘金·启航计划」

最近利用python将excel表格内容导入数据库,发现数据库基础对于程序理解很有帮助,这里整理一些基础知识进行再次回顾,提升数据分析能力。

  • 数据库是什么

数据库(Database)是一个存储和管理数据的电子系统,它允许用户组织、存储、修改和提取数据。通常,数据库由一个或多个表格组成,每个表格包含一个或多个相关数据的记录或行。每个记录或行通常包含多个字段或列,其中包含有关该记录的数据。数据库可以存储各种类型的数据,例如文本、数字、图像、音频和视频等。它们通常被用于管理大量数据,包括个人数据、商业数据、政府数据等等。数据库通常由一种或多种管理软件来处理,例如MySQL、Oracle、Microsoft SQL Server等等。这些软件提供了一系列工具和功能来管理和操作数据库,例如创建和维护数据库、查询和提取数据、保护和备份数据等等。

  • 为什么学习数据库

学习数据库是因为数据库是大多数现代应用程序的核心组件之一,可以帮助管理和组织大量的数据,并提供高效的数据访问和处理能力。支持软件开发,提升个人数据管理能力、对于数据更加敏感。培养逻辑思维,提升问题解决能力。

  • 数据库有什么用

数据处理和存储:数据库是用于存储和处理数据的最佳工具之一。学习数据库可以帮助你了解如何创建、访问、更新和删除数据,以及如何管理和维护数据库系统。

数据分析:数据库可以提供高效的数据访问和查询能力,帮助你快速地分析和查询数据,提供有价值的信息。学习数据库可以帮助了解如何使用SQL等查询语言来处理和分析数据。

应用程序开发:现代应用程序通常需要使用数据库来存储和管理数据。学习数据库可以帮助了解如何设计、开发和维护与数据库相关的应用程序,并提供对现代开发框架和工具的了解。

  • 数据库有哪些分类

数据库可以根据多个不同的分类方式进行分类,以下是其中一些分类方式:

1.按照数据模型分类:

关系型数据库:基于关系模型组织数据的数据库,如MySQL、Oracle、SQL Server等。

非关系型数据库:不基于关系模型组织数据的数据库,如文档型数据库、键值型数据库、列族数据库、图形数据库等。

2.按照部署方式分类:

本地数据库:在本地计算机上安装、运行的数据库,如SQLite。

服务器数据库:需要在服务器上安装、运行的数据库,如MySQL、Oracle、SQL Server等。

3.按照数据处理方式分类:

OLTP数据库(联机事务处理数据库):支持事务处理,主要用于日常操作、数据录入、查询等,如银行、航空公司的订票系统等。

OLAP数据库(联机分析处理数据库):支持复杂的数据分析,主要用于决策支持、数据挖掘等,如数据仓库等。

4.按照数据存储方式分类:

文件数据库:以文件形式存储数据的数据库,如SQLite。

内存数据库:将数据存储在内存中的数据库,如Redis。

5.按照使用对象分类

个人数据库:主要供个人使用的数据库,如微软Access。

企业级数据库:主要面向企业用户的数据库,如Oracle、SQL Server等。

需要注意的是,以上分类方式并非互相独立,一个数据库可能同时符合多个分类标准,例如MySQL是一种关系型、服务器数据库,也可以用于OLTP和OLAP等多种数据处理方式。

  • MYSQL数据库基础操作

下面以学习MySQL数据库为例,以下是一些常见的基本操作,这些操作可以帮助你更好地管理和操作你的数据库。

  • 连接到MySQL服务器

连接到MySQL服务器需要使用命令行工具或者MySQL客户端工具。命令行工具可以在终端或命令行界面中使用,MySQL客户端工具则是安装在计算机上的应用程序。连接到MySQL服务器通常需要指定用户名和密码,例如mysql -u 用户名 -p。然后,你可以开始管理和操作数据库。

  • 创建数据库

使用CREATE DATABASE命令创建一个新的数据库。例如,CREATE DATABASE mydatabase;将创建一个名为“mydatabase”的数据库。你还可以指定数据库的一些其他属性,例如字符集和排序规则。

  • 创建表格

使用CREATE TABLE命令创建一个新的表格。例如,CREATE TABLE mytable (id INT, name VARCHAR(50), age INT);将创建一个名为“mytable”的表格,它包含了id、name和age这三个列。你还可以指定列的一些其他属性,例如数据类型、长度、约束等等。

  • 插入数据

使用INSERT INTO命令向表格中插入数据。例如,INSERT INTO mytable (id, name, age) VALUES (1, 'John', 25);将在mytable表格中插入一行数据,id为1,name为“John”,age为25。你可以插入多行数据,或者使用一个子查询来插入数据。

  • 查询数据

使用SELECT命令从表格中查询数据。例如,SELECT * FROM mytable;将返回表格中的所有数据。你可以使用WHERE子句来过滤查询结果,使用ORDER BY子句来排序结果,使用LIMIT子句来限制结果的数量。

  • 更新数据

使用UPDATE命令更新表格中的数据。例如,UPDATE mytable SET age = 26 WHERE name = 'John';将更新mytable表格中名字为“John”的行的年龄为26。你可以使用WHERE子句来限制更新的行,使用LIMIT子句来限制更新的数量。

  • 删除数据

使用DELETE命令从表格中删除数据。例如,DELETE FROM mytable WHERE id = 1;将删除mytable表格中id为1的行。你可以使用WHERE子句来限制删除的行,使用LIMIT子句来限制删除的数量。

  • 创建索引

使用CREATE INDEX命令创建一个新的索引。例如,CREATE INDEX idx_name ON mytable (name);将在mytable表格中的名字列上创建一个名为idx_name的索引。索引可以加快查询该列的速度,但也会增加插入、更新和删除数据的时间。你可以创建单列索引、多列索引、全文索引等等。

  • 删除索引

使用DROP INDEX命令删除一个索引。例如,DROP INDEX idx_name ON mytable;将删除名为idx_name的索引。你可以在表格中删除单列索引、多列索引、全文索引等等。

  • 备份数据库

使用mysqldump命令备份整个数据库。例如,mysqldump -u 用户名 -p 数据库名 > 备份文件.sql将把整个数据库备份到一个.sql文件中。你可以使用备份文件来还原数据库,也可以使用备份文件来将数据导入到另一个MySQL服务器中。

以上是MySQL数据库的一些常见操作。当然还有更多高级的SQL知识,需要不断深入学习,今天对于数据库基础知识介绍就到这了。