数据库之MySQL字符集与数据库操作

目录

字符集

CHRARCTER SET 与COLLATION的关联

CHRARCTER SET

定义

基础操作

        查看当前MySQL Server支持的 CHARACTER SET

        查看特定字符集信息(主要包含默认的COLLATION 与 MAXLEN)

COLLATION

定义

COLLATION后缀

基础操作

        查看MySQL Server支持的COLLATION

MySQL Server 默认的Charset和COLLATION

utf8和utf8mb4的区别

查看MySQL Server当前的Charset和COLLATION

修改MySQL Server默认的Charset和COLLATION

修改my.cnf配置文件,一般在/etc目录下的

        注意:如果出现my.cnf文件无内容解决方法

修改或添加以下内容到 [mysql] 字节中

修改或添加以下内容到 [client] 字节中

重启MySQL服务

登陆MySQL

查看当前的Charset和COLLATION

指定MySQL Server的Charset和Collation

MySQL数据库操作

查看

语法格式

功能

解析自带数据库

查看所创建的数据库

创建

语法格式

功能

案例

删除

语法格式

功能

案例

切换

语法格式

功能

案例

查看当前连接的数据库

查看数据库版本

查看当前用户

执行对应系统命令

语法格式

作用

案例


字符集

        MySQL字符集包括字符集(CHARACTER)和校对规则(COLLATION)

CHRARCTER SET 与COLLATION的关联

  • MySQL服务器支持多种字符集(Character Set)
  • 每个字符集至少有一个Collation
  • 大部分字符集都有多个Collation
  • 每个字符集都有一个默认的Collation
  • 两个不同的字符集不会有相同的Collation
  • MySQL可以在服务器、数据库、表或字段级别指定使用的字符集

CHRARCTER SET

定义

        Chrarcter set --- 一套字符及其编码,即字符集(一般也是用Charrset这一词)

基础操作

查看当前MySQL Server支持的 CHARACTER SET

mysql> show character set;mysql> show charset;mysql> show char set;mysql> select * from information_schema.character_sets;四种方法任意一种即可

查看特定字符集信息(主要包含默认的COLLATION 与 MAXLEN)

        此处查找所有关于utf的字符集

mysql> show character set like 'utf%';mysql> show charset like 'utf%';mysql> show char set like 'utf%';mysql> select * from information_schema.character_sets where CHARACTER_SET_NAME like 'utf%';四种方法任意一种即可

COLLATION

定义

      Collation --- 在字符集内用于比较排序字符的一套规则,即效验规则 

COLLATION后缀

SUFFIX(后缀)MEANING(意义)
_aiAccent-insensitive(不区分重音,相当于不知道关键字)
_asAccent-sensitive(区分重音)
_ciCase-insensitive(不区分大小写)
_csCase-sensitive(区分大小写)
_ksCase-sensitive(区分假名)
_binBinary(二进制)

基础操作

查看MySQL Server支持的COLLATION

mysql> SHOW COLLATION WHERE Charset = 'utf8mb4';

MySQL Server 默认的Charset和COLLATION

  • <=5.7 doc MySQL Server 5.7或之前版本默认的Charset和Collation是: latin1 和 latin1_swedish_ci
  • 8.x doc MySQL Server 8.x(当前版本)默认的Charset和Collation是: utf8mb4 和 utf8mb4_0900_ai_ci

utf8和utf8mb4的区别

        mb4 000 就是most bytes 4的意思,专门用来兼容四字节的unicode

        utf8 编码最大字符长度为 3 字节,如果遇到 4 字节的宽字符就会插入异常了,所以缺少 Emoji 表情,很多不常用的汉字,以及任何新增的 Unicode 字符

        也就相当于UTF8mb4是我们正常情况下所熟知的UTF-8

查看MySQL Server当前的Charset和COLLATION

mysql> show variables like 'character_set_server';mysql> show variables like 'collation_server';mysql> select @@character_set_server, @@collation_server;

修改MySQL Server默认的Charset和COLLATION

修改my.cnf配置文件,一般在/etc目录下的

[root@localhost ~]# vim /etc/my.cnf

注意:如果出现my.cnf文件无内容解决方法

        打开/etc/mysql/my.cnf 发现里面没有[mysql]、[mysqld]等内容 ,但却指向了其他地方的配置文件

        1.查找当前所指目录

[root@localhost /]# ls /etc/my.cnf.d/

        2.查看[MySQLD]字节所属地,我的在mysql-default-authentication-plugin.cnf 中

[root@localhost /]# vim /etc/my.cnf.d/mysql-server.cnf 

        3.查看[client]字节所属地,我的在client.cnf文件中

[root@localhost /]# vim etc/my.cnf.d/client.cnf 

修改或添加以下内容到 [mysql] 字节中

default_character_set=utf8

 

修改或添加以下内容到 [client] 字节中

default-character-set=utf8

重启MySQL服务

[root@localhost /]# systemctl restart mysqld.service 

 未出现报错,则表示重启成功

登陆MySQL

[root@localhost /]# mysql -uroot -p

查看当前的Charset和COLLATION

mysql> select @@character_set_server, @@collation_server;

指定MySQL Server的Charset和Collation

创建一个指定Charset和Collation的数据库
create database 数据库名 default character set 字符集 collate collation;mysql> CREATE DATABASE SECOND_DB DEFAULT CHARACTER SET GBK COLLATE  GBK_CHINESE_CI;

修改一个指定Charset和Collation的数据库
alter database 数据库名 character set 字符集 collate collation;mysql> ALTER DATABASE FIRST_DB CHARACTER SET GBK COLLATE GBK_CHINESSE_CI;

MySQL数据库操作

查看

语法格式

SHOW DATABASES [LIKE wild];

功能

        列出在MySql服务器主机上的数据库

解析自带数据库

Information_schema --- 主要存储了系统中的一些数据库对象信息:如用户表信息、列信息、权限信

performance_schema --- 主要存储数据库服务器的性能参数

mysql --- 存储了系统的用户权限信息帮助信息

sys ---5.7新增,之前版本需要手工导入。这个库是通过视图的形式把information_schema 和performance_schema结合起来,查询出更加令人容易理解的数据 

查看所创建的数据库

SHOW CREATE DATABASE <数据库名>;

解析:

       CREATE DATABASE `FIRST_DB` --- 代表数据库名字为 FIRST_DB

       /*!40100 DEFAULT CHARACTER SET gbk */  --- 代表其默认的字符集为GBK

       /*!80016 DEFAULT ENCRYPTION='N' */ ---  默认加密为 N

/*!  数字    代码  */  --- 可以跨行注释,但是一定要闭合,不然出错

创建

语法格式

CREATE DATABASE [IF NOT EXISTS]数据库名;

功能

        用给定的名字创建一个数据库

注意:

          如果数据库已经存在,发生一个错误。

案例

        创建数据库 test1

mysql> CREATE DATABASE test1;

删除

语法格式

 DROP DATABASE [IF EXISTS]数据库名;

功能

        删除数据库中得所有和数据库

注意:

        要小心使用这个命令(慎用)

案例

        删除所创建的test1

mysql> DROP DATABASE test1;

切换

语法格式

 USE 数据库名;

功能

        把指定数据库作为默认(当前)数据库使用,用于后续语句

案例

        将当前数据库切换到SECOND_DB

mysql> USE SECOND_DB;

查看当前连接的数据库

mysql> SELECT DATABASE();

查看数据库版本

mysql> SELECT VERSION();

查看当前用户

mysql> SELECT USER();

执行对应系统命令

语法格式

SYSTEM <命令>

作用

        在mysql中执行一些Linux上的操作命令

案例

mysql> system ls 

mysql> system date

mysql> system cls | clear

 注意:

        可以使用管道符“ | ”,在mysql也生效

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/17953.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ChatGPT助力校招----面试问题分享(十一)

1 ChatGPT每日一题&#xff1a;PCB布线&#xff0c;高速信号线走直角的后果 问题&#xff1a;PCB布线&#xff0c;高速信号线走直角的后果 ChatGPT&#xff1a;对于高速信号线来说&#xff0c;最好避免使用直角布线。直角布线会引入反射和信号损耗&#xff0c;从而导致信号完…

如何监测电路中恶性负载

随着社会的发展和科技的进步&#xff0c;人们对于用电的安全性和稳定性要求越来越高。电路中的恶性负载往往会导致电路故障&#xff0c;甚至引发火灾等严重事故。因此&#xff0c;如何监测电路中的恶性负载成为了一个重要的课题。本文将从恶性负载的定义、监测方法、防范措施等…

Qt窗体全屏与复原,子窗体全屏与复原

QT QWidget窗体全屏时&#xff0c;全屏与最大化的区别时最大化有标题框全屏没有框&#xff0c;可以使用自带的函数&#xff1a; showFullScreen(); 复原时也有专门的函数&#xff1a; showNormal(); 如果我想在点击最大化按钮时&#xff0c;让窗体全屏。这个时候最好有线程…

Latex:画图识别符号

http://detexify.kirelabs.org/classify.html

企业金蝶云星空服务器数据库中了locked勒索病毒如何应对

近日&#xff0c;很多企业的金蝶云星空财务账套被locked勒索病毒攻击&#xff0c;财务系统内的许多重要数据被加密&#xff0c;无法正常打开&#xff0c;计算机内的所有文件的扩展名全部都变成了.locked后缀勒索病毒&#xff0c;导致服务器数据库被锁定。这种情况的出现与企业的…

全面了解JavaScirpt 的垃圾(garbage collection)回收机制

全面了解JavaScirpt 的垃圾(garbage collection)回收机制 一、垃圾回收机制—GC javascript具有自动垃圾回收机制(GC:Garbage Collecation)&#xff0c;也就是说&#xff0c;执行环境会负责管理代码执行过程中使用的内存。 原理&#xff1a;垃圾收集器会定期&#xff08;周期性…

多元分类预测 | Matlab基于深度置信网络DBN的分类预测,多特征输入模型,DBN分类预测

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述

spring boot+MySQL实现班级综合测评管理系统

随着电子技术的普及和快速发展&#xff0c;线上管理系统被广泛的使用&#xff0c;有很多事业单位和商业机构都在实现电子信息化管理&#xff0c;班级综合测评管理也不例外&#xff0c;由比较传统的人工管理转向了电子化、信息化、系统化的管理。 传统的班级综合测评管理系统&am…

HTML5 WebSocket介绍与基本使用(解析服务端返回的二进制数据)

WebSocket基本介绍 WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。 WebSocket 使得客户端和服务器之间的数据交换变得更加简单&#xff0c;允许服务端主动向客户端推送数据。在 WebSocket API 中&#xff0c;浏览器和服务器只需要完成一次握手&a…

(vue)vue项目实现语音播报

(vue)vue项目实现语音播报 解决参考1&#xff1a; 在 Vue 项目中&#xff0c;你可以使用 Web Speech API 中的 SpeechSynthesis 接口来实现文本内容的自动朗读。下面是一个示例&#xff1a; 1.在 Vue 组件的模板中添加一个按钮&#xff0c;用于触发朗读&#xff1a; <templa…

【数据结构】map和set

文章目录 map和set1. 关联式容器2. 键值对3. 树形结构的关联式容器3.1 set3.2 set的模板参数列表3.3 set的构造3.4 set的使用举例 4. map4.1 map的使用 5. multiset5.1 multiset的使用 6. multimap7. 经典题目 map和set 1. 关联式容器 vector、list、deque这些容器都是序列式…

TIOBE 7月编程语言榜出炉,这个语言强势突围,前三发生重大变化

TIOBE 公布了 2023 年 7 月的编程指数信息&#xff0c;在这个月&#xff0c;语言榜有什么新变化&#xff0c;让我们一起去看看吧&#xff01; JavaScript 创历史新高 几个月前&#xff0c;编程语言 C 占据了 TIOBE 指数的第 3 位&#xff08;超过了 Java&#xff09;。 但C的…