JSP页面输入的数据也要转化UTF8的编码字符串在传人数据库

一劳用逸

在 MySQL 的安装目录下有一个 my.ini 配置文件,通过修改这个配置文件可以一劳永逸的解决乱码问题。在这个配置文件中 [mysql] 与客户端配置相关,[mysqld] 与服务器配置相关。默认配置如下:

my.ini(Ctrl+F 查找),并根据需要配置相关项,之后重启MySQL 即可。

关键注意事项:

1、MySQL 的配置文件是分模块的,如[mysqld]、[client]模块等,里面的配置项必须是要该模块有的项,否则MySQL将无法启动。

[mysql]

default-character-set= utf8

 

2、修改character_set_server 的值,需要将character-set-server=utf8 配置在[mysqld]模块!(注意模块名与键名!utf8写成utf-8也会出错!),之后重启,查看编码,发现character-ser-server已经变成设置的utf8.

collation-server=utf8_general_ci

3

[client]

 default-character-set = utf8

登录 mysql -u root -p

密码:Ltb6w@2018

查看默认编码格式:mysql> show variables like "%char%"

设置编码格式:

SET character_set_client='utf8'

SET character_set_connection='utf8';
 
SET character_set_server='utf8'

查看数据库dudu的编码格式:

mysql> show create database dudu;

设置数据库dudu的编码格式:

ALTER DATABASE `dudu` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

查看数据表testTable的编码格式:

mysql> show create table testTable; 

设置数据表foot_ball的编码格式:

ALTER TABLE `foot_ball` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

创建数据库、数据表时指定utf8编码:

//建数据库

CREATE DATABASE `dudu` 
CHARACTER SET 'utf8' 
COLLATE 'utf8_general_ci';
 
//建数据表

CREATE TABLE `foot_ball` (
`ID` varchar(40) NOT NULL default '',
`TREAM` varchar(40) NOT NULL default '',
`URL` varchar(40) NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Incorrect string value: '\xE6\x9B\xB9\xE5\x86\xAC...' for column 'realname' at row 1

该情况一般是由数据库设计时的编码错误导致的。

show variables like 'character%' ;  查看数据库编码,为latin1。

    

如果项目正在测试当中,数据不重要的话,一劳永逸的解决办法是,使用 alter database 数据库名字 character set utf8; 更改数据库的编码格式,再重新建表。

注意:在 Hibernate中,指定hibernate.hbm2ddl.auto=create,重新部署项目,hibernate会自动重新建表。

     

如果项目中的数据是重要数据的话,使用 alter table 表名字 convert to character set utf8; 转换需要插入汉字的数据表编码为utf8即可(此例中的数据表是address):

    

为免操作不当,事先最好先备份好数据。

备份是个好习惯,是吧  *~*

  

memento..

Windows本地解决MySql插入中文乱码问题的更多相关文章

  1. Spring boot+Mybatis+MySQL插入中文乱码

    转载:https://www.jianshu.com/p/bd0311a33c16 现象: 搭建spring boot+mybatis+mysql时出现插入mysql的中文出现乱码???.   mys ...

  2. 分享一个解决MySQL写入中文乱码的方法

    分享一个解决MySQL写入中文乱码的方法 之前有发帖请教过如何解决MySQL写入中文乱码的问题.但没人会,或者是会的人不想回答.搜索网上的答案并尝试很多次无效,所以当时就因为这个乱码问题搁浅了一个软件 ...

  3. 解决hibernate向mysql插入中文乱码问题

    一.mysql的问题解决 MySQL会出现中文乱码的原因不外乎下列几点:   1.server本身设定问题,例如还停留在latin1   2.table的语系设定问题(包含character与coll ...

  4. python mysql插入中文乱码

    # "INSERT INTO" 语句sql = "INSERT INTO sites (name, url, status, enable) VALUES (%s, %s ...

  5. 解决hibernate向mysql插入中文乱码问题(转)

    转载自:http://blog.csdn.net/peditable/article/details/7047573 1.首先需要修改MySQL数据库的配置文件my.ini,此文件放在mysql根目录 ...

  6. 解决hibernate向mysql插入中文乱码问题(更改MySQL字符集)

    1.首先需要修改mysql数据库的配置文件my.ini,此文件放在mysql根目录下.在此文件下查找default-character-set属性,并将其值更改为utf8(注意:不是utf-8,也要注 ...

  7. mac下 mysql 插入中文乱码解决

    搞了好几个小时,终于搞定了 乱码根本原因还是编码方式不同造成的,只要编码方式统一就没问题 1. 进入 mysql 命令行, 用 show variables like 'character_set_% ...

  8. mysql插入中文乱码

    https://www.cnblogs.com/zhchoutai/p/7364835.html 最简单的一招,不用修改my.ini文件: 1.停掉mysql服务 2.启动:X:\%path%\MyS ...

  9. mysql插入中文乱码问题

    1.show variables like 'character%' 2.修改 MySql安装目录下面的my.ini(MySQL Server Instance Configuration 文件). ...

随机推荐

  1. 如何使用HTML5的WebSocket实现网页与服务器的双工通信(一)

    本系列服务端双工通信包括两种实现方式:一.使用Socket构建:二.使用WCF构建.本文为使用Socket构建服务端的双工通信,客户端同样使用Html5的WebSocket技术进行调用. 一.网页客户 ...

  2. HTTP POST请求

    1.HTTP的请求方式,主要是GET和POST请求两种方法. GET 请求响应:GET 请求不存在请求实体部分,键值对参数放置在 URL 尾部,因此请求头不需要设置 Content-Type 字段(w ...

  3. erlang开发工具之intellij idea基本使用

    其他废话就不多说了,接下来主要是介绍怎么来用idea搭建项目让我们能更好的使用好开发工具. (这边假设你已经下载好了intellij idea关于erlang的插件,如果没有安装好,请先去google ...

  4. 发布spring cloud + vue项目

    服务器部署结构 1.服务器访问直接访问NGINX 2.静态资源访问, nginx读取本地文件夹 3.API接口路由, nginx把以api开头的访问都路由到业务逻辑服务器. nginx配置 clien ...

  5. AI五子棋第四周——接近尾声

    欢乐时光过得特别快~ 真是快乐的一周,就是项目进展几乎纹丝不动. 燃尽图?? (添加了背景音乐,找到了一个很好的音乐素材网站!) (添加了俩图标:重开,和音乐.) (调了一下前后端通讯,基本能通话了, ...

  6. QWaitConditioin的思考1

    16:50:392017-03-31 本文章为原创,如若引用请指明出处,否则追责. 以 生产.消费者的例子说明 #include <QtCore/QCoreApplication>#inc ...

  7. linux c 使用socket 发送http请求 可以发送json格式数据

    #include <stdio.h>#include <sys/socket.h>#include <sys/types.h>#include <time.h ...

  8. gmail及youtube

    墙内访问youtube没有特别好的方法,只找到一个,提供格式转换和下载: http://new.cloudfile.co/transfer 1. 修改host文件,照常用网页访问.有人会提供最新hos ...

  9. Golang微服务:micro实践

    micro 使用 工具安装 使用protoc生成代码,依赖两个插件:protoc-gen-go.protoc-gen-micro micro 工具 go get -u github.com/micro ...

  10. Servlet抽取的问题-method传递问题+表单提交的问题

    隐藏域解决该问题: 其中,hidden就是隐形域. 表单提交的问题: 1.通过按钮实现: 2.通过function中,获取页面元素.submit方法