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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 初学MySQL必会SQL语句-操作数据库

不是从事数据库职位的人员也要知道的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数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
8天前
|
SQL 关系型数据库 MySQL
mysql 简单的sql语句,入门级增删改查
介绍MySQL中的基本SQL语句,包括数据的增删改查操作,使用示例和简单的数据表进行演示。
mysql 简单的sql语句,入门级增删改查
|
15天前
|
SQL 数据库
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
SQL Server附加数据库出现错误823,附加数据库失败。数据库没有备份,无法通过备份恢复数据库。 SQL Server数据库出现823错误的可能原因有:数据库物理页面损坏、数据库物理页面校验值损坏导致无法识别该页面、断电或者文件系统问题导致页面丢失。
82 12
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
|
18天前
|
NoSQL 关系型数据库 MySQL
微服务架构下的数据库选择:MySQL、PostgreSQL 还是 NoSQL?
在微服务架构中,数据库的选择至关重要。不同类型的数据库适用于不同的需求和场景。在本文章中,我们将深入探讨传统的关系型数据库(如 MySQL 和 PostgreSQL)与现代 NoSQL 数据库的优劣势,并分析在微服务架构下的最佳实践。
|
15天前
|
存储 SQL 关系型数据库
MySQL的安装&数据库的简单操作
本文介绍了数据库的基本概念及MySQL的安装配置。首先解释了数据库、数据库管理系统和SQL的概念,接着详细描述了MySQL的安装步骤及其全局配置文件my.ini的调整方法。文章还介绍了如何启动MySQL服务,包括配置环境变量和使用命令行的方法。最后,详细说明了数据库的各种操作,如创建、选择和删除数据库的SQL语句,并提供了实际操作示例。
58 13
MySQL的安装&数据库的简单操作
|
2天前
|
SQL 存储 移动开发
HTML5 Web SQL 数据库详解
Web SQL 数据库是 HTML5 中的一种本地存储技术,允许在浏览器中使用 SQL 语言操作本地数据,支持离线访问和事务处理,适用于缓存数据和小型应用。然而,其存储容量有限且仅部分现代浏览器支持,标准已不再积极维护,未来可能被 IndexedDB 和 localStorage 等技术取代。使用时需谨慎考虑兼容性和发展前景。
|
3天前
|
关系型数据库 Unix MySQL
MySQL是一种关系型数据库管理系统
MySQL是一种关系型数据库管理系统
11 2
|
5天前
|
Oracle NoSQL 关系型数据库
主流数据库对比:MySQL、PostgreSQL、Oracle和Redis的优缺点分析
主流数据库对比:MySQL、PostgreSQL、Oracle和Redis的优缺点分析
17 2
|
11天前
|
SQL 关系型数据库 MySQL
创建包含MySQL和SQLServer数据库所有字段类型的表的方法
创建一个既包含MySQL又包含SQL Server所有字段类型的表是一个复杂的任务,需要仔细地比较和转换数据类型。通过上述方法,可以在两个数据库系统之间建立起相互兼容的数据结构,为数据迁移和同步提供便利。这一过程不仅要考虑数据类型的直接对应,还要注意特定数据类型在不同系统中的表现差异,确保数据的一致性和完整性。
22 4
|
14天前
|
SQL 缓存 关系型数据库
揭秘MySQL一条SQL语句的执行流程
以上步骤共同构成了MySQL处理SQL语句的完整流程,理解这一流程有助于更有效地使用MySQL数据库,优化查询性能,及时解决可能出现的性能瓶颈问题。
35 7
|
20天前
|
SQL 监控 关系型数据库
MySQL数据库中如何检查一条SQL语句是否被回滚
检查MySQL中的SQL语句是否被回滚需要综合使用日志分析、事务状态监控和事务控制语句。理解和应用这些工具和命令,可以有效地管理和验证数据库事务的执行情况,确保数据的一致性和系统的稳定性。此外,熟悉事务的ACID属性和正确设置事务隔离级别对于预防数据问题和解决事务冲突同样重要。
30 2
下一篇
无影云桌面