## 数据库基本操作
数据库是书记处存储的最外层(最大单元).
#### 通过命令查看当前数据库版本及运行环境
~~~
show variables like '%version%';
~~~
~~~
+-------------------------+-------------------------+
| Variable_name | Value |
+-------------------------+-------------------------+
| innodb_version | 5.7.19 |
| protocol_version | 10 |
| slave_type_conversions | |
| tls_version | TLSv1,TLSv1.1 |
| version | 5.7.19-0ubuntu0.16.04.1 |
| version_comment | (Ubuntu) |
| version_compile_machine | x86_64 |
| version_compile_os | Linux |
+-------------------------+-------------------------+
~~~
#### 创建数据库
~~~
语法: create database 库名 [库选项];
~~~
库选项 : 数据库的相关属性 .
字符集 : charset 字符集,代表着当前数据库下的所有表储存数据默认指定的字符集,如果不指定,那么采用DBMS默认的.
~~~
create database 库名 charset 字符集名称;
~~~
校对集 : collate 校对集.
#### 显示数据库
每当用户通过SQL指令创建一个数据库,那么系统就会产生一个对应的存储数据的文件夹. 每个数据库文件夹下都有一个OPT问价,保存的是对应的数据库选项. 数据库没有指定字符集,那么就会使用DBMS默认的字符集,校对集跟随字符集.
#### 显示所有数据库
~~~
show databases;
~~~
MySQL默认有三个数据库
* information_schema : 保存数据库所有的结构信息(库,表).
* mysql : 核心数据库,权限关系.
* performance_schema : 效率库,运行效率.
#### 显示部分数据库
~~~
show databases like "匹配模式";
~~~
1. _ : 匹配当前位置单个字符.
2. % : 匹配指定位置多个字符.
#### 显示数据库创建语句
~~~
show create database 库名;
~~~
#### 选择数据库
为什么要选择数据库 ? 因为数据是存储到数据表,表存在数据库下.如果要操作数据,那么必须进入到对应的数据库中.
~~~
use 库名;
~~~
#### 修改数据库字符集
~~~
alter database 库名 charset = 字符集;
~~~
#### 删除数据库
删除虽简单,但是切记要做好安全操作:确保里面数据没有问题. 删除数据库之后,对应的储存数据的文件夹也会被删除,OPT文件夹也会被删除.
~~~
drop database 库名;
~~~
- 数据库介绍
- 数据库基本概念
- SQL介绍
- MySQL服务端架构
- 库操作
- 表操作
- 字段类型
- 整数类型
- 小数类型
- 字符串类型
- 日期/时间类型
- json类型
- 字段属性
- Null
- 默认值
- 列描述
- 主键
- 自动增长
- 唯一键
- 数据库基础操作
- 增
- 删
- 改
- 查
- 运算符
- 算术运算符
- 比较运算符
- 逻辑运算符
- in运算符
- is运算符
- like运算符
- 高级查询
- 联合查询
- 连接查询
- 交叉连接
- 内连接
- 外连接
- Using关键字
- 子查询
- 标量子查询
- 列子查询
- 行子查询
- 表子查询
- exists子查询
- 子查询特定关键字
- 用户权限管理
- 用户管理
- 权限管理
- 外键
- 外键操作
- 外键基本要求
- 约束
- 视图
- 事务安全
- 自动事务
- 手动事务
- 事务特点
- 变量
- 系统变量
- 会话变量
- 局部变量
- 流程结构
- if分支
- while循环
- 函数
- 内置函数
- 字符串函数
- 时间函数
- 数学函数
- 其他函数
- 存储过程
- 与函数的区别
- 存储过程操作
- 存储过程的形参类型
- 触发器
- 触发器概念
- 触发器操作