msyql 查看和修改字符集的方法

        在插入或修改数据的时候,报字符集的错误,中文的无法进行插入修改。比如:

 update users  set user_name='关羽'  where user_id=2;

   报错信息:

        ERROR 1366 (HY000): Incorrect string value: '/xB9/xD8/xD3/xF0' for column 'user_name' at row 1 
  向表中插入中文字符时,出现错误。 

1,查看字符集

1,查看MYSQL数据库服务器和数据库字符集

方法一:查看字符集

show variables like '%character%';

方法二:查看校对集字符

show variables like 'collation%';

        MySQL 中每个字符集都会对应多个校对规则,是一对多的关系。比如utf8对应的collation有utf8_general_ci,utf8_bin,utf8_unicode_ci等。而且每个character set会有个默认的collation与之对应,在创建数据库或者创建表时如果只指定character set,不指定collation,就会使用character set默认的collation。collation的命名是以对应的character set为开头,比如collation为utf8_general_ci,就知道这个collation对应的字符集是utf8。

-- 查看校对规则有哪些
SHOW COLLATION;

2,查看MYSQL所支持的字符集

sql语句:

show charset;

3,查看库的字符集

语法:

SHOW CREATE DATABASE database_name;

例如:

SHOW CREATE DATABASE test;

查看当前数据库的字符集:

SELECT @@character_set_database;

4,查看表的字符集

语法:

show table status from 库名 like 表名;

例如:

SHOW TABLE STATUS FROM test LIKE 'worker%'; 

5,查看表中所有列的字符集

语法

show full columns from 表名;

例如:

SHOW FULL COLUMNS FROM worker;

Collation字段对应字符集

2,设置字符集

        设置字符集一般有两种方法,一种是在创建表的时候设置字符集,另一种是表建成之后修改字符集。也还可以指定字段的字符集。

1,创建时指定字符集

1,创建库的时候指定字符集:

语法:

create database 库名 default character set=字符集;

例如:

create database test1 default character set=utf8;

2,创建表的时候指定字符集:

语法:

create table 表名(属性)default character set = 字符集;

例如:

CREATE TABLE `worker2` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(30) DEFAULT NULL,
  PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;

3,字段指定字符集

语法:

create table 表名 (字段名 数据类型 character set 字符集名);

例如:

CREATE TABLE `worker3` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(30) DEFAULT NULL,
  `gender` CHAR(1) CHARACTER SET gbk,
  PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;

再查看字段的字符集:

SHOW FULL COLUMNS FROM worker3;

        gender字符集是gbk的

2,修改字符集

1,修改全局字符集
/*字符集设置*/
/*建立连接使用的编码*/
set character_set_connection=utf8;
/*数据库的编码*/
set character_set_database=utf8;
/*结果集的编码*/
set character_set_results=utf8;
/*数据库服务器的编码*/
set character_set_server=utf8;


/*修改全局字符集*/
set character_set_system=utf8;


/*校对集字符设置*/
/*连接使用的编码*/
set collation_connection=utf8;


/*数据库的编码*/
set collation_database=utf8;
/*数据库服务器的编码*/
set collation_server=utf8;

2,修改库的字符集

语法:

alter database 库名 default character set 字符集;

例如

alter database test default character set utf8;

查看数据库当前的字符集编码

show create database test;

3,修改表的字符集

语法:

alter table 表名 convert to character set 字符集;

例如:

alter table worker3 convert to character set utf8;

再查看worker3字段的字符集

SHOW FULL COLUMNS FROM worker3;

可以看到gender字段的字符集改为utf8了。

4,修改字段的字符集

语法:

alter table 表名 modify 字段名 字段属性 character set 字符集;

例如:

alter table worker3 modify gender char(1) character set gbk;

再查看worker3字段的字符集

SHOW FULL COLUMNS FROM worker3;

可以看到gender字段的字符集改为gbk了。

3,总结:

        平时设置字符集感觉很少,默认都是系统设置的校对集字符。更多是出现报错了,插入中文字符的数据失败了,才会去查看表字段的字符集,再查看表格的字符集,最后查数据库的字符集,一级一级往上定位。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024年学浪视频下载器

学浪视频官方没有提供下载选项,但又有很多人需要学浪视频下载器,于是我就开发了这么一款软件,学浪视频下载器:小浪助手.exe 我把学浪下载器打包成压缩包,有需要的自己取一下 链接:https://pan.baidu.com/s/1y7vcqILT…

Google Chrome 常用设置

Google Chrome 常用设置 References 转至网页顶部 快捷键:Home 转至内容设置 chrome://settings/content 清除浏览数据 历史记录 -> 清除浏览数据 关于 Chrome 设置 -> 关于 Chrome chrome://settings/help References [1] Yongqiang Cheng, https:/…

保健品wordpress外贸模板

保健品wordpress外贸模板 健康保养保健品wordpress外贸模板,做大健康行业的企业官方网站模板。 https://www.jianzhanpress.com/?p3514

NucleiStudio下longan nano烧录官方例程

longan nano烧录官方例程 一、准备工作二、编译程序三、器件连接四、烧录程序 IDE:NucleiStudio202009 开发板:longan nano gd32vf103c8t6 一、准备工作 1、下载IDE 芯来科技官网下载NucleiStudio 2、下载烧录器 https://dl.sipeed.com/shareURL/LONGAN/LonganPi3H 网盘链接 …

达梦配置ODBC连接

达梦配置ODBC连接 基础环境 操作系统:Red Hat Enterprise Linux Server release 7.9 (Maipo) 数据库版本:DM Database Server 64 V8 架构:单实例1 下载ODBC包 下载网址:https://www.unixodbc.org/ unixODBC-2.3.0.tar.gz2 编译并…

【Qt 学习笔记】认识QtSDK中的重要工具

博客主页:Duck Bro 博客主页系列专栏:Qt 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ 认识QtSDK中的重要工具 文章编号:Qt 学习笔记 / 03 文章目…

MySQL安装卸载-Linux

目录 1.概述 2.安装 2.1.上传 2.2.解压 ​​​​​​​2.3.安装 ​​​​​​​2.4.启动服务 ​​​​​​​2.5.查询临时密码 ​​​​​​​2.6.修改临时密码 ​​​​​​​2.7.创建用户 ​​​​​​​2.8.分配权限 ​​​​​​​2.9.重新链接 3.卸载 3.1.停…

A53 cache的架构解读

快速链接: 【精选】ARMv8/ARMv9架构入门到精通-[目录] 👈👈👈 引流关键词:缓存,高速缓存,cache, CCI,CMN,CCI-550,CCI-500,DSU,SCU,L1,L2,L3,system cache, Non-cacheable,Cacheable, non-shareable,inner-shareable,outer-shareable, optee、…

【C++】C++11类的新功能

👀樊梓慕:个人主页 🎥个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》《Linux》《算法》 🌝每一个不曾起舞的日子,都是对生命的辜负 目录 前言 默认成员函数 类成…

shell的编写

文章目录 1.框架2.命令行3.获取用户命令字符串4.命令行字符串分割5.执行命令和内建命令6.完整代码: 1.框架 我们知道shell是一直存在的,所以首先我们第一步就是要搭建一个框架,使其一直存在。 那么也很简单,一个while循环就可以完…

intellij idea 使用git的 cherry pick 摘取其他分支的comment

cherry pick 摘取其他分支的comment 如果想把 feature_v1.0 分支的comment 摘到 feature_v1.0_new 分支上, 先切换到 feature_v1.0_new分支,这一步不能少了。然后点击 下面菜单栏的 git,点击Local Changes旁边的 Log,这时能看到…

(科研实践篇)大模型相关知识

1.embedding 1.介绍: embedding就是用一个低纬的向量表示一个物品。而这个embedding向量的实质就是使距离相似的向量所对应的物品具有相似的含义(参考皮尔逊算法和cos余弦式子:计算相似度)简单来说,就是用空间去表示…

一个简单好看的html模板

做一个个人博客第一步该怎么做? 好多零基础的同学们不知道怎么迈出第一步。 那么,就找一个现成的模板学一学呗,毕竟我们是高贵的Ctrl c v 工程师。 但是这样也有个问题,那就是,那些模板都,太!…

后端SpringBoot+Mybatis 查询订单数据表奇怪报错加一

排错过程: 看报错意思是SQL语句存在错误,然后使用图形化工具运行这个SQL语句 其实这里稍微细心想一下就能发现问题,但是当时没深入想,就觉得order表前加了数据库名字影响不大,所以感觉SQL语句是没问题的,然…

第十二篇【传奇开心果系列】Python自动化办公库技术点案例示例:深度解读Python自动化操作Word

传奇开心果系列博文 系列博文目录Python自动化办公库技术点案例示例系列 博文目录前言一、Python自动化操作Word介绍二、使用python-docx示例代码二、**使用win32com示例代码**三、使用comtypes示例代码四、使用docx-mailmerge示例代码五、基本操作示例代码六、高级操作示例代码…

讲讲你对数据结构-线性表了解多少?

线性表 - 数组和矩阵 当谈到线性表时,数组和矩阵是两种常见的数据结构。 数组(Array): 数组是有序的元素集合,可以通过索引来访问和操作其中的元素。它是最简单、最基本的数据结构之一。数组的特点包括: …

不讲概念,讲实操,mysql 分表模糊查询、分页查询 及 merge 表的使用

1.Mysql merge合并表的要求 1.合并的分表必须是 MyISAM 引擎,MyISAN引擎是不支持事务的。2.Merge表只保证合表后数据唯一性,合表前的数据可能会存在重复。3.表的结构必须一致,包括索引、字段类型、引擎和字符集。4.删除 tb_member1 分表正确…

网络爬虫:爬取假数据

网络爬虫:爬取假数据 文章目录 网络爬虫:爬取假数据前言一、项目介绍:二、项目来源:三、架构图:(流程图)四、使用了什么技术:(知识点)五、结果示意图&#xf…

DXP学习001-原理图的全局编辑

目录 一,元件标注的全局编辑 1,元件的标注 1)order of processing排序执行顺序 2)※matching options匹配选项 3)annotate schematic注释原理图 ① schematic sheet ②annotate scope 注释范围 ③order顺序…

SpringCloud Hystrix 服务熔断、服务降级防止服务雪崩

文章目录 SpringCloud Hystrix 熔断器、服务降级防止服务雪崩需求背景引入依赖启动类加Hystrix注解接口配置熔断常规配置超时断开错误率熔断请求数熔断限流 可配置项HystrixCommand.Setter参数Command Properties 服务降级 SpringCloud Hystrix 熔断器、服务降级防止服务雪崩 H…