Mysql-库操作详解

1.创建库

①查看数据库

sql 复制代码
show databases;

②创建库

sql 复制代码
create database +db_name ;

说明:当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则

是:utf8_ general_ ci

"校验规则" 校验规则 就是数据库比较字符串时用的那一套规则

不要忘记加;

③删除不想要的库

sql 复制代码
drop database +db_name;

④ 条件创建库

为了安全,防止已经有了还创建;

⑤ 查看当前在哪个库

⑥修改数据库

比如上图就是对test的校验集和编码集进行了修改,当然后续我们还是可以改别的;

⑦ 查看当前使用的库

使用哪个数据库的时候,一定要确定要使用的是哪一个

sql 复制代码
use +db_name;

⑧对数据库如何备份

备份一个数据库:

bash 复制代码
mysqldump -P3306 -uroot -p -B test2 >test2.sql

对数据库进行备份需要在linux中,其中-B选项的意思是指明你要备份的数据库名,>重定向到test2.sql;

但是当前的test2.sq只在我们当前的机器上,如何让它被还原到原来的mysql中呢?

在mysql中输入以下命令即可;

还原之后数据库名称任然和原来的一样;

备份多个数据库

bash 复制代码
mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径

⑨数据库的重命名

数据库不支持重命名嘿嘿;

⑩查看数据库使用人数

event_scheduler:简单来说,它是 MySQL 用来执行定时任务的后台线程。你可以把它理解为 MySQL 里的"闹钟管理员"。

2.数据库的编码集和校验集

①什么是编码集和校验集

编码集 :数据库未来存储的数据的

校验集: 支持数据库进行字符比较,使用同样的编码;读取数据库中的数据采用的编码格式;

数据库无论对数据做任何操作,必须保证数据用同一种编码;

② 查看系统默认支持的编码集命令;

sql 复制代码
show variables like 'character_set_database';

③ 查看系统默认校验集的命令;

sql 复制代码
show variables like 'collation_database';
sql 复制代码
create database d4 collate=utf8_general_di;

④ 查看数据库支持的全部校验集和字符集的命令

sql 复制代码
show charset;
show collation;

⑤ 指定字符集和校验集创建库

指定字符集

sql 复制代码
create database charset=uft8;

指定校验集

sql 复制代码
create database d3 charset=UTF8;

当然,校验集和字符集可以同时指明;在创建数据库时指明对应的编码集和校验集的话,就会使用我们当前的命令下的,不再是我们之前配置的了;

补充:清理mysql的命令

sql 复制代码
system clear

3.对表的操作

① 建表

sql 复制代码
create table if not exists person(name varchar(20));

person是表的名字;name是表的列名;varchar是数据类型;20是数据大小;

② 查看当前数据库有那些表

③查看表的性质(persons是一个表)

④如何对表插入数据(编码规则)

如何查询数据(校验规则)

这里的* 的意思是查看这个表的里全部内容;

⑤ 如何查询表中具体的数据

⑥ 如何对表中数据进行排序

大写的ASCII码值大于小写的;默认是升序的;

⑦备份表

bash 复制代码
mysqldump -u root -p 数据库名 表名1 表名2 > D:/mytest.sql

恢复:

⑧删除表

sql 复制代码
drop table tablename;

4.不同的校验集和编码集在编码层面上有什么区别

首先我们知道的是utf_general_ci的校验不区分大小写;

验证:

而utf8_bin的校验规则是不区分大小写的;

验证:

相关推荐
2301_803875616 小时前
PHP 中处理会话数组时的类型错误解析与修复指南
jvm·数据库·python
m0_743623926 小时前
c++如何批量修改文件后缀名_std--filesystem--replace_extension【实战】
jvm·数据库·python
2501_914245937 小时前
CSS如何处理CSS变量作用域冲突_利用特定类名重写变量值
jvm·数据库·python
maqr_1108 小时前
MySQL数据库迁移到云端如何保障安全_数据加密与SSL连接配置
jvm·数据库·python
u0109147608 小时前
MySQL如何限制触发器递归调用的深度_防止触发器死循环方法
jvm·数据库·python
weixin_381288188 小时前
MySQL中如何使用HEX函数转换十六进制_MySQL进制转换函数
jvm·数据库·python
Deitymoon8 小时前
嵌入式数据库——SQLite基础
数据库·sqlite
YMatrix 官方技术社区8 小时前
美国·硅谷|YMatrix 即将亮相 Postgres Conference 2026,前瞻 AI 时代的数据基座
数据库·数据仓库·postgresql·时序数据库·ymatrix
bKYP953cL9 小时前
构建自己的AI编程助手:基于RAG的上下文感知实现方案
数据库·人工智能·ai编程
Bert.Cai9 小时前
MySQL DML简介
数据库·mysql