1、什么是数据库?
数据库(DabaBase)简称DB,它是用于存储和管理数据的仓库,也可以理解为是大量数据的集合。
数据库的特点:
① 数据库可以持久化存储数据,其实数据库就是一个文件系统
② 方便存储和管理数据
③ 可以使用统一的SQL语句来管理数据库
常见的数据库软件:
数据库排行参见:DB-Engines Ranking - popularity ranking of database management systems
Oracle: 收费的大型数据库,它是Oracle工具的产品,Oracle收购了SUN公司,收购了MySQL。
MySQL:它是开源免费的数据库、小型数据库,已经被Oracle收购了,自此以后MySQL 6.x版本也开始收费
Microsoft SQL Server:SQL Server 是Microsoft 公司推出的关系型数据库管理系统。
PostgreSQL:PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS)
MongoDB:MongoDB是一个基于分布式文件存储 [1] 的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
Redis:Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库。
DB2:DB2是IBM一种分布式数据库解决方案。说简单点:DB2就是IBM开发的一种大型关系型数据库平台。
Elasticsearch:Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。
Microsoft Office Access:Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点,是 Microsoft Office 的系统程序之一。
SQLite:SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。常用于嵌入式的开发,会被内置到其它的软件或者系统中去,例如被嵌入进Android系统中。
数据库表:
数据库表是相关的数据项的集合,它由列和行组成。一个数据库通常包含一个或多个表。每个表由一个名字标识(例如“客户”或者“订单”)。表包含带有数据的记录(行)。
下面的例子是一个名为 "Persons" 的表:
Id | LastName | FirstName | Address | City |
1 | Adams | John | Oxford Street | London |
2 | Bush | George | Fifth Avenue | New York |
3 | Carter | Thomas | Changan Street | Beijing |
上面的表包含三条记录(每一条对应一个人)和五个列(Id、姓、名、地址和城市)。
常见的数据库表如下图所示:
2、MySQL 5.7.35 数据库软件的下载、安装和配置
安装环境:
系统版本:Windows 10 家庭中文版
系统版本号:21H2
MySQL版本:5.7.35
数据库下载:
下载地址1:
Index of /mysql/downloads/MySQL-5.7/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
数据库安装:
① 双击启动安装包,点击 Next 进入下一步
② 然后勾选 I accept the terms in the License Agreement ,点击 Next 进入下一步。
③ 然后点击第二个 Custom 自定义安装,自定义安装路径。
Typical:典型安装,安装最常用的功能。
Custom:自定义安装,选择安装路径和组件等。
Complete:完全安装,安装所有组件,默认安装在C盘。
④ 然后点击右下角的 Browse...(设置安装路径)
⑤ 然后将Folder name改为自定义的安装路径。可以直接将盘符C改为D,快速调整路径。也可以直接使用默认的C盘。调整完毕后点击 OK 。
⑥ 修改之后的安装路径。点击 Next 。
⑦ 然后点击 Install ,开始安装。
⑧然后点击 Finish 安装完成。
数据库配置:
配置MySQL环境变量
① 右击此电脑>属性>高级系统设置
② 点击环境变量
③ 然后点击新建
④ 然后 将变量名设置为:MYSQL 变量值为MySQL的安装路径,例如我的是:D:\MySQL\MySQL Server 5.7\bin 然后单击确定
⑤ 然后在系统变量中找到Path ,然后再最后输入 %MYSQL% 然后点击确定,环境变量窗口也要点击确定
⑥ 然后打开命令行工具,输入 mysql -V 以检测环境变量是否配置成功
如果出现上图所示mysql版本号,即表示环境变量配置成功
3、SQL
SQL是什么?
SQL是用于访问和处理数据库的标准计算机语言。通过SQL语句可以查询、获取、插入、更新、删除数据库中的数据,同时也可以通过SQL语句创建数据库、创建表、创建视图,可以设置表、存储过程和视图的权限。
SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 、MySQL以及其他数据库系统。
不幸地是,存在着很多不同版本的 SQL 语言,但是为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的关键词(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)。
注意:
① 除了 SQL 标准之外,大部分 SQL 数据库程序都拥有它们自己的私有扩展!
② SQL 对大小写不敏感
SQL语法
SQL语句示例:
下面的语句表示从User表中查询userName字段的数据
查询结束数据如下:
SQL 语句后面的分号
某些数据库要求在每条SQL命令的末端使用分号,分号是在数据库系统中分隔每条SQL语句的标准方法,这样就可以在对服务器的相同请求中执行一条以上的语句。如下在MySQL 数据库中编写SQL语句:
查询结果如下:
SQL DML和DDL
可以把SQL分为两个部门:数据操作语言(DML)和数据定义语言(DDL)。
数据操作语言(DML):
SQL(结构化查询语言)是用于执行查询的语句。但是SQL语言也都包含了更新、插入、删除的语法,如下所示:
- SELECT 表示从数据库中获取数据
- UPDATE 表示更新数据库中表的数据
- DELETE 表示从数据库中删除数据
- INSERT INTO 表示从数据库中插入数据
数据定义语言(DDL):
SQL数据定义语言(DDL)可以创建数据库、表,修改数据库、表等等,也可以定义索引(键),规定表之间的链接,以及施加表之间的约束,如下示例:
- CREATE DATABASE 表示创建新数据库
- ALTER DATABASE 表示修改数据库
- CREATE TABLE 表示创建新表
- ALTER TABLE 表示表示变更(改变)数据库表
- DROP TABLE 表示删除表
- CREATE INDEX 表示创建索引
- DROP INDEX 表示删除索引