MySQL 数据库操作

系统库

   MySQL在初始化后会创建一些系统库,不同的系统库有不同的用处。

   information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息、列信息、权限信息、字符信息等

   performance_schemaMySQL5.5开始新增一个数据库:主要用于收集数据库服务器性能参数,记录处理查询请求时发生的各种事件、锁等现象

   mysql: 授权库,主要存储系统用户的权限信息

   testMySQL数据库系统自动创建的测试数据库(看下载的是不是有测试套件的版本)

创建数据库

   语法:create database 数据库名 charset 字符编码;

   命名规则:可以由字母、数字、下划线、,区分大小写,具有唯一性,不能使用关键字,不能单独使用数字,最长128位

   以下示例将演示创建出一个名为school的数据库

mysql> create database school charset utf8;
Query OK, 1 row affected (0.00 sec)

mysql>

查看数据库

   使用show databases;可查看所有的数据库

   使用show create database 数据库名;可查看某一数据库的创建信息

   使用select database();可查看当前所在的数据库

   查看所有数据库

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| school             |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

mysql>

   查看数据库的创建信息

mysql> show create database school;
+----------+-----------------------------------------------------------------+
| Database | Create Database                                                 |
+----------+-----------------------------------------------------------------+
| school   | CREATE DATABASE `school` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>

   查看当前所在的数据库

mysql> use school;  #进入school数据库
Database changed
mysql> select database();
+------------+
| database() |
+------------+
| school     |
+------------+
1 row in set (0.00 sec)

mysql>

进入数据库

   使用use 数据库名;可进入指定的数据库

   以下将演示从school数据库中进入mysql内置授权库中

mysql> use school;
Database changed
mysql> select database();
+------------+
| database() |
+------------+
| school     |
+------------+
1 row in set (0.00 sec)

mysql> use mysql;
Database changed
mysql> select database();
+------------+
| database() |
+------------+
| mysql      |
+------------+
1 row in set (0.00 sec)

mysql>

修改数据库

   修改数据库无非是修改其字符编码,使用alter database 数据库名 charset 字符编码;进行修改

   以下示例将展示将school数据库字符编码utf8修改为gbk,再将其改回来的操作;

mysql> show create database school;
+----------+-----------------------------------------------------------------+
| Database | Create Database                                                 |
+----------+-----------------------------------------------------------------+
| school   | CREATE DATABASE `school` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> alter database school charset gbk;
Query OK, 1 row affected (0.00 sec)

mysql> show create database school;
+----------+----------------------------------------------------------------+
| Database | Create Database                                                |
+----------+----------------------------------------------------------------+
| school   | CREATE DATABASE `school` /*!40100 DEFAULT CHARACTER SET gbk */ |
+----------+----------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> alter database school charset utf8;
Query OK, 1 row affected (0.00 sec)

mysql> show create database school;
+----------+-----------------------------------------------------------------+
| Database | Create Database                                                 |
+----------+-----------------------------------------------------------------+
| school   | CREATE DATABASE `school` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>

删除数据库

   使用drop database 数据库名;可对数据库进行删除操作,

   为了防止删除不存在的数据库报错可以使用if判断要执行删除的数据库是否存在,,drop database if exists 数据库名;

mysql> drop database if exists school;
Query OK, 0 rows affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql>
posted @ 2020-08-28 23:59  云崖先生  阅读(198)  评论(0编辑  收藏  举报