MySQL提供了几条数据库级别的语句:use用于选定一个默认数据库;create database用于创建数据库;drop database用于删除数据库;alter database用于更改数据库的全局属性。
选择数据库:use db_name
使用use语句可以选择数据库,并把它指定为MySQL服务器连接的默认(当前)数据库;不是一定要显示的选择数据库。在你没有选择数据库的情况下,只要用数据库名来限定表名,就可以引用该库里的表。会话期间可以随时切换数据库。
mysql> select * from sampdb.student;
+-----------+-----+------------+
| name | sex | student_id |
+-----------+-----+------------+
| Megan | F | 1 |
| Joseph | M | 2 |
| Kyle | M | 3 |
| Katie | F | 4 |
| Abby | F | 5 |
| Nathan | M | 6 |
| Liesl | F | 7 |
| Ian | M | 8 |
| Colin | M | 9 |
+-----------+-----+------------+
创建数据库:create database 语法如下:
CREATE [DATABASE][IF NOT EXISTS] db_name
[DEFAULT] CHARACTER SET [=] charset_name
| [DEFAULT] COLLATE [=] collation_name
默认情况下,当你试图创建一个已存在的数据库时,系统会报错。如果想避免这样的错误,并且只想在给数据库尚不存在时才创建它,可以加上IF NOT EXISTS
CREATE DATABASE IF NOT EXISTS db_name
默认情况下,显示设置数据库属性的方法是,使用character set子句和collate子句。
CREATE DATABASE mydb CHARACTER SET utf8 COLLATE utf8_icelandic_ci;
MySQL的数据目录,在创建完数据库后,MySQL服务器会在其数据目录下创建一个目录,其名与数据库名相同。在该目录下还有一个名为db.opt的文件,用于存放一些属性,如数据库的字符集和排序规则等。
删除数据库 DROP DATABASE db_name
删除数据库,将删除数据库和其中所有的内容。包括数据目录
更改数据库 ALTER DATABASE
alter database语句用来更改数据库的全局属性。目前,数据库的全局属性只包含默认的字符集和排序规则。
ALTER DATABASE [db_name] [CHARACTER SET charset] [COLLATE collation];