[TOC]
## 数据库操作主要包括
#### 1、创建数据库 ( `CREATE DATABASE` )
#### 2、查看数据库 ( `SHOW DATABASES` )
#### 3、修改数据库 ( `ALTER DATABASE ` )
#### 4、删除数据库 (` DROP DATABASE`)
* * * * *
> <font color="ForestGreen">数据库操作是所有MySQL操作的起点;
数据库与数据表的关系,可以理解为目录与文件;
操作不局限于上述语句,上面四条语句最常用。</font>
* * * * *
#### 一、创建数据库
##### 1、语法:
`CREATE DATABASE IF NOT EXISTS 数据库名称 DEFAULT CHARSET 默认编码集 COLLATE 校对规则;`
##### 2、语法解释:
* `IF NOT EXISTS`:如果该数据库不存在则创建,防止创建错误;
* ` DEFAULT CHARSET`:默认编码集通常选择utf8,其它编码集不推荐,ThinkPHP也推荐默认为utf8编码集;
* ` COLLATE`:校对规则就是默认的排序方式,这与默认编码集相对应,如果设置了默认编码集为utf8,这个选项可以省略,直接用默认值:utf8_general_ci。
##### 3、实例:
任务:创建员工数据库
`CREATE DATABASE IF NOT EXISTS staff DEFAULT CHARSET utf8 COLLATE utf8_general_ci;`
因为设置了默认编码集,可以省略校对规则:COLLATE,语句可简写为:
`CREATE DATABASE IF NOT EXISTS staff DEFAULT CHARSET utf8;`
#### 4、总结:
以后工作中,推荐用如下语法创建:
`CREATE DATABASE IF NOT EXISTS 数据库名称 DEFAULT CHARSET utf8;`
#### 5、运行结果:
![](https://box.kancloud.cn/fb0e1bf4cdb467215e4c8147b1286ea4_1109x810.png)
* * * * *
### 二、查看数据库
#### 1、语法:
`SHOW DATABASES;`
#### 2、语法解释:
* 服务器上通常会有很多数据库,因此,这里使用复数。
#### 3、实例:
任务:查看当前服务器有多少个数据库
`SHOW DATABASES;`
#### 4、运行结果:
![](https://box.kancloud.cn/429d00bdaa35d5cafe94a4485ee5b619_1109x810.png)
* * * * *
### 三、修改数据库
#### 1、语法:
`ALTER DATABASE 数据库名 修改项目;`
#### 2、语法解释:
>[info]* 数据库创建成功后,可修改项主要是默认编码集和校对规则,其它不必修改
>* 如果原数据库编码集不是utf8,可用该语句修改成为utf8;
>* 如果校对规则不是utf8-general-ci,也可用该语句进行修改。
#### 3、实例:
任务: 将当前数据库的默认字符编码集改为utf8,校对规则修改为utf8-general-ci
1、修改编码和核对规则:
`ALTER DATABASE staff CHARACTER SET utf8 COLLATE utf8_general_ci;`
2、查看字符编码集
`SHOW CHARACTER SET;`
3、查看校对规则
`SHOW COLLATION;`
#### 4、运行结果::
![](https://box.kancloud.cn/89bb48e26b64266f998650f2e3818d76_1103x797.png)
### 四、删除数据库
#### 1、语法:
`DROP DATABASE IF EXISTS 数据库名;`
#### 2、语法解释:
>[success]* 删除数据库是一项非常危险的操作,一旦删除无法恢复;
>* `IF EXISTS`:可以防止出现删除不存在数据库的错误提示;
>* 数据库删除后,该库中所有表,一并删除不可恢复。
#### 3、实例:
任务:删除刚才创建的员工数据库staff
语句: `DROP DATABASE IF EXISTS staff;`
#### 4、运行结果:
![](https://box.kancloud.cn/0b2f54fcd58284b0b92d64a70245aae4_1076x775.png)
- 前言[随时更新]
- ThinkPHP 5数据库重构
- 开发环境
- 1.ThinkPHP5开发环境(Mac版)
- 2.ThinkPHP5开发环境(Win版)
- MySQL快速复习
- 1.数据库操作
- 2.数据表操作
- 1.创建数据表 (重点)
- 2.添加数据表记录
- 3.查询数据表(重点)
- 4.更新数据表
- 5.编辑数据表结构(重点)
- 6_复制数据表
- 7.删除数据和表
- 连接数据库
- 1.数据库配置文件database.php
- 2.Db类静态方法connect()
- 3.模块中的配置文件config.php
- MySQL原生查询
- 1.读操作query
- 2.写操作execute
- 选择数据表
- 1.table与setTable方法
- 2.name方法
- 3.db助手函数
- 4.alias方法
- 结果集查询
- 1.find方法
- 2.select方法
- 3.fetchSql方法
- 4.value方法
- 5.column方法
- 6.field方法
- 新增数据
- 1.insert_单条添加
- 2.insertAll_批量添加
- 3_db_助手函数添加
- 更新数据
- 1.update方法
- 2.setField更新字段
- 3_自增自减与延时更新
- 删除数据
- 1.delete方法
- 查询方法
- 1.getTableInfo方法
- 2.where方法
- 3.whereOr方法
- 4.混合查询(闭包实现)
- 表达式查询
- 1.表达式查询(重点)
- 2.exp通用查询
- 分组查询
- 1.group方法
- 2.having方法
- 排序分页查询
- 1.order方法
- 2.limit方法
- 3.page方法
- 聚合查询
- 时间查询
- 1.where方法
- 2.whereTime方法
- 高级查询
- 1.快捷查询
- 2.区间查询
- 3.批量查询
- 4.Query对象查询
- 5.混合查询
- 视图查询
- view方法
- 子查询
- 1.select方法
- 2.fetchSql方法
- 3.buildSql方法
- 4.闭包子查询
- 总结/参考
- 1.方法参数类型总结
- 2.查询/子查询/连接查询