mysql 代码中文乱码_mysql 中文乱码 完全版解决方法

news/2025/3/22 1:24:02

mysql 中文乱码 完全版解决办法

mysql是一小型数据库,各方面都讲究轻量级的实现。关于编码问题也是如此,只要搞清楚几个关键概念,便能轻轻松松的解决这个问题。在网上以搜索相关的主题是各种解法汇集,但是都没能清楚的说明解决问题的关键所在。看如下:

在进行mysql安装的时候会有一个选择mysql默认编码的机会,他默认的方式是latin1的编码方式.在这个地方应该选择我们想要的编码方式,当然了主推utf-8,这是最通用的编码方式,在一个J2EE系统中可以从后台数据库,服务器,以及前台页面的编码方式都可以用这一个种编码,能够很好的解决因为编码给我带来的麻烦。我们在此处设置了utf-8之后其实对应的是Mysql目录下面的my.ini文件下面的有两个 default-character-set=latin1 的设置都会变成default-character-set=utf8.之后我们在使用sql语句创建数据的时候,只需要将创建的数据库指定为utf-8格式就基本上能解决绝大部分的编码问题,至于设置数据库编码的方式是:

创建时:

create database student character set utf8;

创建后修改:

alter database student character set utf8;

如果我们在安装mysql的时候未能指定为utf8格式的,可以修改my.ini文件下面的有

[mysql]

default-character-set=latin1

.

.

# created and no character set is defined

default-character-set=latin1

将他们修改成utf8,关于这里我原来的笔记上面说的是一个是上面的一个需要改成gbk,下面的一个改成utf8,但是感觉有些不妥,我前段时间在安装mysql选定了Utf8,我倒这个文件里面来看这两个地方都是utf8,所以你可以试一下。

现在来看最核心的概念:

mysql中有character set(字符集)和collation(整理或比较字符的规则的集合)两种概念,

服务器端有:

character_set_server:服务器

collation_server

character_set_database 数据库 (在create database 设置的,如上)

collation_database

客户端:

character_set_client:客户端发送过来的字符集

character_set_results:发送给客户端的结果所使用的字符集

连接:

character_set_connection:用于连接的字符集

collation_connection:用于连接的collation

其中的character_set_client.character_set_results,和character_set_connection这三个就是根据My.ini配置文件里面的default_character_set来设置的,也可以在控制台下用set names utf8来进行修改,但是可能只是暂时的吧。没有试过。

有时候情况还是有些特殊,即使上面的招式全用了也没有效果,还有可能是连接字符串的问题,在连接字符串的时候可以写成如下,我这个是在用hibernate的时候写的,不知道jdbc下面是否可以直接用:

jdbc:mysql://localhost:3306/databasename?useUnicode=true&characterEncoding=utf-8

我们在创建数据库的时候可以如上那样写,可以用更加完整的方式:

create database student

character set utf8

default character set utf8

collate utf8_general_ci

default_collate utf8_general_ci;

其中有一些设置是多余的。

有了这些基本上mysql的问题都能迎刃而解了,如果还是不行,那就自求多福了。多试试,凡事都是有规律的,掌握了就一切都不是问题!

原创文章,转载请注明: 转载自搞代码

e7ce419cf2d6ad34d01da2ceb8829eed.png

微信 赏一包辣条吧~

023a57327877fb4402bcc76911ec18ea.png

支付宝 赏一听可乐吧~


https://dhexx.cn/news/show-547766.html

相关文章

最新增值税商品税目编码表_大家好!我叫增值税!这是我的最新最全税率表!...

最新增值税税率表征收率预征率,精信代账今天给大家更新知识了!- 01 -最新增值税税率表记住口诀,增值税新税率一点也不难记!一、13%纳税人销售货物、修理修配劳务、有形动产租赁服务或者进口货物。看似比较散乱,但是从记…

7-6 输出GPLT (20分)

给定一个长度不超过10000的、仅由英文字母构成的字符串。请将字符重新调整顺序,按GPLTGPLT…这样的顺序输出,并忽略其它字符。当然,四种字符(不区分大小写)的个数不一定是一样多的,若某种字符已经输出完&am…

5个新的启用触摸功能的jQuery插件2014

如果我们能够在移动设备上浏览内容总是很高兴,这就是为什么我们向您提供您想尝试的5个新的启用触摸功能的jQuery插件2014的原因 。 它们易于使用,完全响应并支持触摸。 去看一下。 请享用! 1. OWL轮播 启用触摸功能的jQuery插件,可…

CPU cache

2019独角兽企业重金招聘Python工程师标准>>> 回写与直写 2009-02-20 08:41:16 分类: 服务器与存储 对于cache的算法。 大方面有两种,Write-Through(通写)和Write-Back(回写). Write-Through,也就是说OS发送的处理data的请求&…

python中如何隐藏箭头_python – 禁用matplotlib的默认箭头键绑定

使用matplotlib的mpl_connect功能,可以将事件绑定到函数调用.但是,左右箭头键默认绑定在图的历史记录中“后退”和“前进”.我想禁用此默认绑定.例如:import matplotlib.pyplot as pltdef on_key_press(event):if event.key "left":print("Left!&qu…

mongodb 生产_mongodb副本集生产环境下部署案例,推荐一个主两个从三台机器

Linux中部署Mongodb副本集提示:以下操作步骤较多,请耐心阅读。关于理论部分请参考上篇浅谈mongodb副本集。1、 准备192.168.102.110 master192.168.102.111 slave1192.168.102.112 slave2以下操作以常用的1主2从3台机器为例2、 操作以master为例&#xf…

7-3 到底是不是太胖了 (10分)

据说一个人的标准体重应该是其身高&#xff08;单位&#xff1a;厘米&#xff09;减去100、再乘以0.9所得到的公斤数。真实体重与标准体重误差在10%以内都是完美身材&#xff08;即 | 真实体重 − 标准体重 | < 标准体重10%&#xff09;。已知市斤是公斤的两倍。现给定一群人…

进入Node.js的世界

这些天&#xff0c;每个人都在谈论Node.js &#xff0c;但是您不确定它是什么吗&#xff1f; 或者&#xff0c;您是否只想以一些书呆子知识打动您的朋友&#xff1f; 本文将带您快速了解Node.js的世界&#xff01; 背景 2009年5月27日&#xff0c; Ryan Dahl发布了以JavaScript…

【笔记】wamp多站点配置

方法很多&#xff0c;不一一叙述。 1.打开httpd.conf 去掉“#Include conf/extra/httpd-vhosts.conf” 前的注释 2.确认配置&#xff1a; <Directory /> AllowOverride all Require all granted </Directory> 3.注释掉一些语句 #ServerAdmin adminlocalhost #Ser…

python修饰器太难搞_【Python】小说爬虫界面版(各种BUG已修复)

[Python] 纯文本查看 复制代码import tkinter as tkimport reimport urllib.requestimport osimport timefrom urllib.parse import quotefrom tkinter import *import tkinter.messageboxdef search1():search entryUrl.get()search_Book "https://www.qidian.com/sear…