数据库-基本操作
- 2020 年 3 月 27 日
- 筆記
1.5 数据库的操作
1.5.1 创建数据库
语法:
create database [if not exists] 数据名 [选项]
例题
-- 创建数据库 mysql> create database stu; Query OK, 1 row affected (0.06 sec) -- 创建数据库时,如果数据库已经存在就要报错 mysql> create database stu; # ERROR 1007 (HY000): Can't create database 'stu'; database exists -- 在创建数据库时候,判断数据库是否存在,不存在就创建 mysql> create database if not exists stu; Query OK, 1 row affected, 1 warning (0.00 sec) -- 特殊字符、关键字做数据库名,使用反引号将数据库名括起来 mysql> create database `create`; Query OK, 1 row affected (0.04 sec) mysql> create database `%$`; Query OK, 1 row affected (0.05 sec) -- 创建数据库时指定存储的字符编码 mysql> create database emp charset=gbk; Query OK, 1 row affected (0.00 sec) # 如果不指定编码,数据库默认使用安装数据库时指定的编码
MySQL数据库的目录
数据库保存的路径在安装MySQL的时候就配置好。 也可以在my.ini配置文件中更改数据库的保存地址。(datadir="F:/wamp/PHPTutorial/MySQL/data/") 一个数据库就对应一个文件夹,在文件夹中有一个db.opt文件。在此文件中设置数据库的字符集和校对集

小结:
1、如果创建的数据库已存在,就会报错。
解决方法:创建数据库的时候判断一下数据库是否存在,如果不存在再创建
2、如果数据库名是关键字和特殊字符要报错。
解决:在特殊字符、关键字行加上反引号
3、创建数据库的时候可以指定字符编码
脚下留心:创建数据库如果不指定字符编码,默认和MySQL服务器的字符编码是一致的。
1.5.2 显示所有数据库
语法:
show databases
例题
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.00 sec)
注意:数据库安装后,只带上面四个数据库
1.5.3 删除数据库
语法:
drop database [if exists] 数据库名
例题
mysql> drop database `create`; Query OK, 0 rows affected (0.00 sec) mysql> drop database `%$`; Query OK, 0 rows affected (0.00 sec) -- 判断数据库是否存在,如果存在就删除 mysql> drop database if exists stu; Query OK, 0 rows affected (0.00 sec)
小结: 1、如果删除的数据库不存在,会报错
解决:删除之前判断一下,如果存在就删除
1.5.4 显示创建数据库的语句
语法:
show create database 数据库名
例题:
mysql> show create database emp; +----------+-------------------------------------------------------------+ | Database | Create Database | +----------+-------------------------------------------------------------+ | emp | CREATE DATABASE `emp` /*!40100 DEFAULT CHARACTER SET gbk */ | +----------+-------------------------------------------------------------+ 1 row in set (0.00 sec)
1.5.5 修改数据库
只能修改数据库选项,数据库的选项只有字符编码
语法:
alter database 数据库名 charset=字符编码
例题:
mysql> alter database emp charset=utf8; Query OK, 1 row affected (0.00 sec)
小结:
1、修改数据库只能修改数据库的字符编码
2、在MySQL中utf字符编码之间没有横杆 utf8
1.5.6 选择数据库
语法:
use 数据库名
例题
mysql> use emp; Database changed