• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

初学MySQL必会SQL语句-操作数据库

互联网 diligentman 1周前 (02-22) 6次浏览

不是从事数据库职位的人员也要知道的SQL语句。
嗯!因为我也是初学,所以有问题的地方告诉我哈!

目录

1.数据库操作

1.1.登录数据库

  • 这条基本不用说,肯定必备
mysql -uroot -p123123

1.2.创建数据库

  • 语法
CREATE DATABASE database_name
  • 普通的创建方式,例如我需要为zabbix环境创建一个数据库
mysql> create database zabbix;
Query OK, 1 row affected (0.01 sec)
  • 还有一种创建数据库的方式,这种方式的含义是:如果不存在某数据库,则创建;如果存在,则忽略创建语句
mysql> create database if not exists zabbix;
Query OK, 1 row affected, 1 warning (0.01 sec)

1.3.查看数据库

  • 语法
SHOW DATABASES
  • 可以从下列代码中看到除系统库之外我们额外创建的zabbix库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| zabbix             |
+--------------------+
5 rows in set (0.01 sec)
  • 查看MySQL所在的数据库
mysql> select database();
+------------+
| database() |
+------------+
| NULL       |
+------------+
1 row in set (0.01 sec)

mysql> use mysql;
Database changed

mysql> select database();
+------------+
| database() |
+------------+
| mysql      |
+------------+
1 row in set (0.00 sec)
  • 查看数据库的创建信息
mysql> show create database zabbix G
*************************** 1. row ***************************
       Database: zabbix
Create Database: CREATE DATABASE `zabbix` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */ /*!80016 DEFAULT ENCRYPTION='N' */
1 row in set (0.00 sec)
以上信息为:创建zabbix数据库使用的字符集为utf8mb4,校对规则为utf8mb4_0900_ai_ci,DEFAULT ENCRYPTION='N'表示为未使用加密技术。

1.4.修改数据库

  • 通过重命名数据表方式修改数据库名称

步骤如下:

1.创建一个test_old测试库,在库中创建table_test测试表
2.创建test_new数据库
3.将test_old中table_test表重命名到test_new数据库下
4.查看test_new下数据表
5.删除test_old数据库

SQL语句如下:

mysql> create database test_old;
mysql> use test_old;
mysql> create table table_test(id int);
mysql> show tables;
mysql> create database test_new;
mysql> rename table test_old.table_test to test_new.table_test;
mysql> use test_new;
mysql> show tables;
+--------------------+
| Tables_in_test_new |
+--------------------+
| table_test         |
+--------------------+
1 row in set (0.00 sec)
mysql> drop database test_old;
  • 通过导入/导出数据方式修改数据库名

步骤如下:

1.将test_old库中数据导出到本地
2.创建test_new数据库
3.将本地的数据导入到test_new库

SQL语句如下:

mysql> create database test_old;
mysql> use test_old;
mysql> create table table_test(id int);
# mysqldump -uroot -p123123 test_old > test_old_dump.sql
mysql> create database test_new;
mysql> use test_new;
mysql> source /root/test_old_dump.sql;
mysql> show tables;
+--------------------+
| Tables_in_test_new |
+--------------------+
| table_test         |
+--------------------+
1 row in set (0.00 sec)
mysql> drop database test_old;

1.5.创建数据库指定字符编码

  • 创建test_01数据库,指定字符编码为utf-8,校验规则为uft8_unicode_ci,不使用MySQL加密技术。
mysql> create database test_01 default character set utf8 collate utf8_unicode_ci default encryption='N';
Query OK, 1 row affected, 2 warnings (0.01 sec)
mysql> show create database test_01 G
*************************** 1. row ***************************
       Database: test_01
Create Database: CREATE DATABASE `test_01` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */ /*!80016 DEFAULT ENCRYPTION='N' */
1 row in set (0.00 sec)
  • 修改数据库字符集,把create改为alter,接上已有的数据库名称,修改成想 要的字符集即可
mysql> alter database test_01 character set utf8bm4 collate utf8mb4_0900_ai_ci;

1.6.删除数据库

  • 语法:
drop database [if exists] database_name;
  • 删除test_01数据库
#首先查看所有数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test_01            |
| test_new           |
| zabbix             |
+--------------------+
7 rows in set (0.01 sec)
#删除test_01数据库
mysql> drop database test_01;
Query OK, 0 rows affected (0.01 sec)
#再次查看数据库,发现test_01数据库已经被删除
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test_new           |
| zabbix             |
+--------------------+
6 rows in set (0.00 sec)
  • 也可以像创建一样使用另一种方法
mysql>drop database if exists test_01;

本文针对MySQL库的操作,包括创建、查询、修改、删除等方面的归纳,去除大量说明性的文字,以笔记的形式记录操作的SQL语句,方便使用时的查询。


程序员灯塔
转载请注明原文链接:初学MySQL必会SQL语句-操作数据库
喜欢 (0)