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. tomcat文件下目录介绍

    主目录下有bin ,conf ,lib ,logs ,temp ,webapps ,work 7个文件夹,下面对它们分别进行介绍: 1.bin目录主要是用来存放tomcat的命令,主要有两大类,一类是 ...

  2. asp.net webapi 生成在线文档--Swagger

    第一步:使用nuget包获取Swashbule.swagger.net.ui的包并安装. 安装成功后 打开App_Start->SwaggerNet.cs 注释掉一下两行 //[assembly ...

  3. 【Java】关于项目启动大请求量高负载时如何确保db等资源不出错的问题

      如果一个项目启动时(单机), 瞬间来了1000个访问, 如何确保db等资源不会压垮呢? 现在想想我当时回答的并不好, 而现在看公司框架才发现其实有针对于这一块做过专门的优化的.下面就来分享下公司关 ...

  4. 【oracle】生成AWR报告

    [第一步]找到awrrpt.sql文件 [ora11g@vm-kvm11820-app ~]$ locate awrrpt.sql /DATA/opt/app/ora11g/product//rdbm ...

  5. 创建Windows服务

    windows服务应用程序是一种长期运行在操作系统后台的程序,它对于服务器环境特别适合,它没有用户界面,不会产生任何可视输出,任何用户输出都回被写进windows事件日志.计算机启动时,服务会自动开始 ...

  6. css计算属性 calc()

    left: calc((100vw - 400px) / 2);   calc 进行简单的运算时,运算符号左右各要有一个空格,不然不起作用.

  7. 30天代码day4 Class vs. Instance

    Class A blueprint defining the charactaristics and behaviors of an object of that class type. Class ...

  8. Vue2.5学习路线及基础知识总结。

    在接触新技术不了解时,我喜欢去慕课网上看新手教程,在学习vue时,在慕课网上看了几个老师的视频,发现这挺好,讲到挺详细的,适合新手,有兴趣的可以先看一下,vue2.5入门教程. 然后在学习路上看见了一 ...

  9. 约瑟夫斯问题-java版数组解法和链表解法

    10个人围成一圈,从1到10编号,从1开始数,数到3或3的倍数的位置,则该位置的人出局,求最后剩下哪一个号? 数组解法: 数组存放数组:a[10]存在1到10编号人 数组遍历到尾部又从头遍历:遍历数组 ...

  10. MySQL-02-进阶

    大纲 1)数据约束 2)数据库设计(表设计) 3)存储过程 4)触发器 5)mysql权限问题 数据约束 2.1什么数据约束 对用户操作表的数据进行约束 2.2 默认值 作用: 当用户对使用默认值的字 ...