什么是数据库?
- 数据库就是储存数据的仓库
- 数据库和Excel很像,Excel本质是一个文件,数据库本质上也是一个文件
- 数据课和Excel很像,Excel文件中可以有很多的表,一个数据库中也有很多得表
- 数据库和Excel很像,Excel文件的每张表就是用来储存数据的,数据库中的每张表也是用来储存数据的
- 所以学习数据库和学习Excel很像,就是学习如何新建数据库文件,如何在数据库中新建表,如何往表中储存数据和操作表中的数据
什么事MySQL
- MySQL是由瑞典AB公司开发的关系型数据库
- MySQL是开源免费的,所以现在是市面上最受欢迎的数据库之一
什么是关系型数据库?
关系型数据库
- 每个表都是独立的
- 表与表之间通过公共字段建立关系(如ID)
- 多表查询效率低
- SQL Server/Oracle/MySQL
非关系型数据库
- 解决了关系型数据库多表查询的效率问题
- Redis、Mongodb等
数据库安装
1.安装包下载地址:
2.安装过程:
2.1选择自定义安装
2.2选择要安装的版本
2.3修改安装路径
2.4设置数据库密码
2.5其它一律下一步
3.测试是否安装成功
3.1配置环境变量, 将安装目录中bin文件夹的地址放到环境变量path中
3.2在终端输入 mysql --help 或者 mysql --version
数据库链接和断开
- 链接MySQL服务器
mysql -h127.0.0.1 -p3306 -uroot -proot
-h 主机地址
-p 端口号
-u 用户名
-p 用户密码
注意点:
1.1:如果MySQL服务器在本地, 主机地址可以省略
1.2:如果服务器使用默认3306端口, 端口号可以省略
mysql -h127.0.0.1 -P3306 -uroot -proot 链接远程MySQL服务器
mysql -h127.0.0.1 -uroot -proot 链接远程MySQL服务器, 使用默认端口3306
mysql -uroot -proot 链接本地的MySQL服务器, 使用默认端口3306
mysql -uroot -p 密码采用暗文形式
最常用的方式:
mysql -h127.0.0.1 -uroot -p 链接远程MySQL服务器, 使用默认端口3306
- 退出链接
exit;
quit
\q
- 显示数据库
show databases
注意后面有s
数据库默认的数据库
3.1 information_schema
保存着关于MySQL服务器所维护的所有其他数据库的信息
如 数据库名,数据库的表,表栏的数据类型与访问权限等等
3.2 mysql
mysql系统数据库,保存了登录用户名密码,以及每一个用户的权限等等
3.3 performance_schema
用来保存数据库服务器性能的参数
3.4sys
这个库是通过试图的形式把information_schema和performance_schema结合起来,查询出更加令人容易理解的数据
MySQL的简介
如何学习mysql
- 学习mysql和学习Excel差不多
- 使用Excel步骤: 安装Excel-创建Excel文件-创建表-在表中存储数据
- 使用MySQL步骤: 安装MySQL-创建数据库----创建表-在表中存储数据
学习MySQL本质上就是学习数据库的增删改查
mysql主要有三种增删改查分别是:
- 数据库的增删改查
- 表的增删改查
- 数据的增删改查
- mysql中可以有0-n个数据库,数据库中可以有0-n个表,表中可以有0-n个数据
什么SQL?
结构化查询语言(Structured Query Language)简称
是用来操作关系型数据库的一门语言
是一个关系型数据库通用的操作语言
注意点:各大厂商为了更多的市场,都会在标准的sql基础上扩展一些自己的东西
例如:SQL Server 使用T-SQL
Oracle 使用PL/SQL
Mysql 使用MySQL
SQL语句功能划分
DDL:数据定义语句
用来定义数据库对象:创建库,表,列
DML:数据库操作语句
用来操作数据库表中的记录
DQL:数据查询语句
用来查询数据
DCL:数据控制语句
用来定义访问权和安全级别
SQL数据类型
和常见的编程语言一样,数据库中储存的数据也是区分类型的
mysql中支持的数据类型大致可以分为三类:数值类型、字符串类型、日期和时间类型
MySQL常见的数据类型如下:
double:浮点类型,例如double(5,2)表示最多5位,其中必须有2位小数,及最大值位999.99
char:固定长度字符串类型;char(10);
varchar:可变长度字符串类型;varchar(10);
text:字符串类型
blob:二进制类型
date:日期类型,格式为yyyy-MM-dd;
time: 时间类型格式为:hh:mm:ss
datetime:日期时间类型 yyyy-MM-dd hh:mm:ss
注意点:在mysql中字符串和日期类型都要用单引号括起来,如:'ylk' '2022-7-23