SQL对数据库的操作
创建数据库
图形化创建
在root@127.0.0.1上面直接创建数据库,然后指定字符集和数据库排序规则即可
字符集不选,默认情况为utf8,字符串排序规则,默认情况下排序规则为utf8_general_ci(不区分大小写)
utf8-bin区分大小写,utf8_general_ci不区分大小写
插叙:删除数据库
将指定的语句选择,然后按执行查询(f9)将会执行
#演示数据库的使用
#1.创建一个名称为hsp_db01的数据库[图形化和指令演示]
#使用指令创建(默认为utf8 utf_general_ci)
CREATE DATABASE hsp_db01;
#2.创建一个使用utf8字符集的hsp_db02的数据库
# character set 表示字符集
# collate 表示校验规则
CREATE DATABASE hsp_db02 CHARACTER SET utf8;
#3.创建一个使用utf8字符集,并带有校对规则的hsp_db03的数据库
CREATE DATABASE hsp_db03 CHARACTER SET utf8 COLLATE utf8_bin;
当创建表的时候没有指定他的字符集和校验规则,将会使用数据库的字符集和校验规则
查询数据库
#演示删除和查询数据库
#1.查看当前数据库服务器中的所有数据库
SHOW DATABASES;
#2.查看当前创建的hsp_db01数据库的定义信息(即查看创建这个数据库使用的sql)
SHOW CREATE DATABASE hsp_db01 ;
#细节:在创建数据库和表的时候为了规避关键字(可以创建名字为关键字的数据库和表)
#可以使用反引号来解决
#如下面:
DROP DATABASE ‘create’;
#3.删除前面创建的hsp_db01
DROP DATABASE hsp_db01;
查询结果:
备份和恢复数据库
备份指的是数据库备份到我们的一个文件中
恢复指的是我们从文件把数据恢复到一个数据库里面去
备份数据库
#1.备份数据库
/*
细节:
1.该命令只能在Dos窗口中执行
2.>后面是备份文件的路径
3.文件中储存的其实是数据对应的sql语句*/
mysqldump -u -root -p -B hsp_db02 hsp_db03 >d://bak.sql
注意我们在dos里面不要连接mysql,如果连接后然后再执行我们的备份命令,将会出现命令无法识别的情况
#1.备份数据库
/*
细节:
1.该命令只能在Dos窗口中执行(window下的黑框),不要连接mysql
2.>后面是备份文件的路径
3.文件中储存的其实是数据对应的sql语句*/
#mysqldump -u -root -p -B hsp_db02 hsp_db03 >d:\\bak.sql
我们打开D盘下备份的文件,可以看到里面其实是储存了我们生成这些数据所使用的SQL语句
恢复数据库
方式一,使用mysql命令行操作
该语句需要连接Mysql,然后在mysql命令行中执行
注意:我们在mysql命令行执行上面的语句,意思是将路径中的数据恢复到成数据库
方式二:将备份文件中的sql语句复制到sql编译器中执行
但是在实际的开发中数据库可能是很大的,我们不可能将数据库中的所有内容(所有的表)都进行备份,而只将其中的一部分表进行备份(注意该命令只能在Dos下执行)
#备份database 中的user表(如果一个数据库中有多张表,可以备份多张)
恢复所备份的表,因为本人水平有限,还不知道怎么怎么删除表,故以后再实践
网友实践经验:如果想恢复表,得先use 库名进入库,然后再source备份路径名,通过实践也确实是如此
- 恢复user表(需要再mysql命令行下执行(即通过Dos先连接mysql))