数据库的基本操作

目录

一、查看所有的数据库:

二、创建数据库:

[if not exists :](#if not exists :)

字符编码集:

排序规则:

三、查看创建的库:

四、修改数据库:

五、删除数据库:

[if exists:](#if exists:)


前言:

在默认情况下,MySQL 的命令不区分大小写。只要是对应的英文字符就可以。

一、查看所有的数据库:

sql 复制代码
show databases;

这条语句可以查看当前的**所有数据库,**因为是查询所有的数据库,所以database写成了databases的复数形式。

例子:

通过该条语句在Navicat客户端查询得到 :

二、创建数据库:

sql 复制代码
create database if not exists dog charset utf8mb4 collate utf8mb4_0900_ai_ci

通过这条语句,我们创建了一个名字****为 dog字符编码集utf8mb4排序规则utf8mb4_0900_ai_ci 的数据库。

if not exists :

是数据库中常用的一种条件判断语句片段,主要用于在执行某些操作(如创建数据库、表、用户等)之前,先检查目标对象是否已经存在,若不存在则执行后续操作,避免因重复创建相同对象而导致错误

字符编码集:

utf8mb4:支持全球大多数字符,是多语言(不同的国家的语言差别)应用的首选。

排序规则:

utf8mb4_0900_ai_ci 这种组合使得 MySQL 在存储和处理字符数据时,既能支持广泛的字符范围,又能在进行比较和排序操作时提供一种不区分重音和大小写的灵活方式.

例子:

通过该条语句在Navicat客户端查询得到 :

三、查看创建的库:

sql 复制代码
show create database dog

通过这条语句可以得到我们创建名字为 dog 库的信息。

例子:

通过该条语句在Navicat客户端查询得到 :

红色箭头指向的信息得到:

CREATE DATABASE `dog` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */ /*!80016 DEFAULT ENCRYPTION='N' */

  1. 数据库名字的反引号``,是为了防止使用的数据库名刚好是关键字。

  2. /*!40100default.... */ 和/*!80016 DEFAULT...*/ 这个不是注释,表示当前mysql版本大于4.01和 8.0.16时,分别执行对应的语句。

四、修改数据库:

sql 复制代码
alter database dog charset gbk;

这条语句的作用是将名为 dog 的数据库的字符编码集修改为**GBK**。

也可以修改排序规则

sql 复制代码
alter database dog collate utf8mb4_general_ci

这条语句将把 dog数据库的排序规则 设置为 utf8mb4_general_ci

排序规则决定了数据库中字符数据的比较和排序方式,比如按照字母顺序、是否区分大小写和重音等。

一般不建议对数据库进行修改。容易出问题。

五、删除数据库:

sql 复制代码
drop database if exists dog;

if exists

  • 这是一个条件判断子句,用于在执行删除操作之前先检查指定的数据库是否存在。如果数据库存在 ,则执行删除操作;如果数据库不存在,使用了 IF EXISTS 子句后,数据库管理系统不会抛出错误,而是继续执行后续语句(如果有的话)。

例子:

通过该条语句在Navicat客户端查询得到 :

可以看到,之前创建名字为 dog 的数据库已经被删除了。

相关推荐
东风破_4 小时前
danci 2:创建的单词书到底存在哪里?从 Supabase 一路理解 ORM、Drizzle 和 RLS
数据库·后端·node.js
橙子家6 小时前
OSS 文件上传的几个风险点和解决方案
数据库
2601_962066497 小时前
【Sql Server】Update中的From语句,以及常见更新操作方式
android·java·数据库
愤怒的苹果ext8 小时前
MySQL Shell备份恢复数据库
数据库·mysql·备份恢复·mysqlsh
数字新视界10 小时前
DCIM管理系统的技术架构与部署模式详解
数据库·物联网·数据中心·数据中心基础设施管理·dcim管理系统
何以解忧,唯有..10 小时前
Pydantic 介绍与使用:Python 数据校验的现代方案
数据库·python·microsoft
这个DBA有点耶11 小时前
数据库容灾进入“秒级时代”:同城双活架构原理、关键技术选型与落地实践
数据库·架构·dba
2601_9620748112 小时前
大数据-264 实时数仓 - Canal MySQL的binlog研究 存储目录 变动信息 配置MySQL
大数据·数据库·mysql
2601_9620738112 小时前
大数据-240 离线数仓 - 广告业务 测试 ADS层数据加载 DataX数据导出到 MySQL
大数据·数据库·mysql
Frank_refuel13 小时前
【MYSQL进阶】-> 索引理解
数据库