数据库操作
1.选择数据库
如果想要使用指定的数据库,需要使用MySQL提供的use语句来实现,use语句可以实现选择一个数据库,使其成为当前数据库。只有使用use语句指定某个数据库为当前数据库时,才能对该数据库及其存储的数据对象执行操作。use语句的语法格式如下。
use 数据库名;
2.修改数据库
在MySQL中,创建一个数据库后,还可以对其进行修改,不过这里的修改是指可以修改被创建数据库的相关参数,并不能修改数据库名。修改数据库名不能使用这个语句。修改数据库可以使用alter database或者alter schema语句来实现。修改数据库的语句的语法格式如下。
alter {database|schema}[数据库名]
[default] character set[=]字符集
|[default] collater[=]校对规则名称;
注:其中最常用的字符集是GBK和UTF8.
注意:在使用alter database或者alter schema语句时,用户必须使用具有对数据库进行修改的权限。
例如:修改数据库db_admin,设置默认字符集和校对规则,具体代码如下。
alter database db_admin
default character set gbk
default collater gbk_chinese_ci;
执行效果如下图所示:
3.删除数据库
在MySQL中,可以通过使用DROP DATABASE语句或者DROP SCHEMA语句来删除已经存在的数据库。使用该命令删除数据库的同时,该数据库中的表,以及表中的数据也将永久删除,因此,在使用该语句删除数据库时,一定要小心,以免误删除有用的数据库。DROP DATABASE或者DROP SCHEMA语句的语法格式如下:
drop {database|schema}[if exists]数据库名;
例如:通过drop database语句删除名为db_admin的数据库,具体代码如下:
drop database db_admin;
当我们使用上面的命令删除数据库,如果指定的数据库不存在,将产生如图所示的异常信息。
为了解决这一问题,可以在drop database语句中使用if exists从句来保证只有当数据库存在时才执行删除数据库的操作。下面通过一个具体的例子来演示这一功能。
例如:通过drop database 语句删除名称为db_111的数据库(该数据库不存在),具体代码如下。
show databases like 'db_%'; -- 此句用来查询以db_开头的数据库
drop database if exists db_111;
执行效果如图所示:
注意:
MySQL安装后,系统会自动创建两个名称分别为performance_schema和mysql的系统数据库,MySQL把与数据库有关的信息存储在这两个系统数据库中,如果删除了这两个数据库,那么MySQL将不能正常工作。所以这两个数据库一定不能删除。