背景:在做 javaweb 项目的时,前台传递的中文最后插入数据库的时候总是出现乱码现象。

解决方案

​ A、不管是使用 Idea、eclipse,确定自己的项目所使用的字符集是 UTF-8

​ B、查看 MySQL的字符集是否是 UTF-8。打开 Dos 窗口,输入:mysql -u root -p, 在输入密码即可进入数据库。进入数据库输入命令 :show variables like 'character%';查看数据库的字符集,如下图:

MySQL 的默认编码是 Latin1,不支持中文,要支持中文需要把数据库的默认编码修改为 UTF-8

​ C、修改 MySQL 的字符集。

​ ① 使用命令修改数据库的字符集为 UTF-8。(由于小编使用命令设置后依旧不能插入,不在此赘述)

​ ② 修改 MySQL 的配置文件。(修改后,成功插入中文,在此介绍这种方法)

D、本人安装的 `MySQL`  版本是 5.7.25,安装好 `MySQL`  后就要对字符集进行修改了,网上的大部分说法是去	安装目录找一个 `my-default.ini` 文件,然后重命名为 `my.ini`,再对其进修改字符集即可,但是 在`MySQL`  的安装目录下居然没有这个文件。

​ 其实 MySQL 的 5.7.25 的 my.ini文件不在安装目录下,如果是默认安装 MySQL 的,那么它的 my.ini 文 件在隐藏文件夹 C:\ProgramData\MySQL\MySQL Server 5.7 下。

​ 你需要做的就是显示隐藏的的项目,找到这个文件修改即可(修改前,请先做备份)。

​ 对该 my.ini 文件下进行配置修改 :

[client]

default-character-set = utf8

[mysql]

default-character-set = utf8

[mysqld]

character-set-client-handshake = FALSE

character-set-server = utf8

collation-server = utf8_unicode_ci

init_connect=’SET NAMES utf8’

​ E、修改 my.ini 文件后,保存,再重启 MySQL 服务。

​   计算机——右键——管理——服务,找到 MySQL57,对其右键停止,再启动即可

​ F、重启成功后,进入 MySQL 数据库,输入show variables like 'character%'; 显示数据库字符集已修改成功。

重要提示:

对于中文乱码问题,小编只是列举了一种可能性,以及解决方案。当然最重要的是肯定还有很多原因导致中文乱码,都会有相应的解决方案。作为程序猿,应当懂得 google,正所谓自己动手,丰衣足食。

web 项目:解决插入 MySQL 数据库时中文乱码问题的更多相关文章

  1. web项目存数据到数据库,中文乱码,解决过程

    first: 排查原因: 打断点,查看到底是在执行存数据库操作之前就已经乱码了,还是存数据库操作后乱码的. 前者解决方案: 在web.xml里面加上: <filter> <filte ...

  2. 关于php读mysql数据库时出现乱码的解决方法

    关于php读mysql数据库时出现乱码的解决方法 php读mysql时,有以下几个地方涉及到了字符集. 1.建立数据库表时指定数据库表的字符集.例如 create table tablename ( ...

  3. php使用mysql数据库时中文不显示或显示异常解决方法

    如果出现标题所述问题,需从四个层面解决问题 1 项目文件是否为utf8编码 右键项目文件->properties->Resource->Text file encoding-> ...

  4. Windows使用MySQL数据库管理系统中文乱码问题

    声明:本文关于MySQL中文乱码问题的解决方案均基于Windows 10操作系统,如果是Linux系统会有较多不适用之处,请谨慎参考. 一.MySQL中文乱码情况 1. sqlDevelper远程登陆 ...

  5. mysql数据库的中文乱码问题的解决

    今天终于解决了数据库中文乱码的问题,分享出来让更多的人作为参考,我们进入主题: 如果在搭建mysql数据库的时候没有设置它的编码格式,在以后的开发中,中文乱码会是一个令人头疼的问题,所以我在这里分享一 ...

  6. new Date插入mysql数据库时多了一秒

    在使用new Date() 插入数据库时,查询出来比实际多了一秒,mysql 表字段设置为datetime类型,当时间精确到秒时,如果毫秒大于500时,会自动进位. 解决方法为格式化后再插入数据库.

  7. 在web项目下注册MySQL数据库驱动失败

    java.lang.ClassNotFoundException: com.mysql.jdbc.Driver at org.apache.catalina.loader.WebappClassLoa ...

  8. 在.net core web 项目中操作MySql数据库(非ORM框架,原生sql语句方式)

    本案例通过MySql.Data和Dapper包执行原生sql,实现对数据库的操作. 操作步骤: 第1步:在MySql数据库中新建表User(使用Navicat For MySql工具) 建表语句: c ...

  9. 在DOS中操作MySQL数据库出现中文乱码

    1. 问题:最近使用到MySQL数据库操作,在DOS下使用命令行向mysql中插入/读取中文时出现乱码问题. 2. 原因:由于CMD客户端默认编码为GBK,而本人在安装MySQL时设置编码为UTF-8 ...

随机推荐

  1. git 入门教程之1分钟快速了解 git

    git 入门教程 git 是分布式版本控制系统,是文本文档管理的利器,是帮助你管理文件动态的好帮手. 如果你曾经手动管理过文档,一定有这样的经历,比如你正在编辑文档,想删除某段落,又担心不久后可能会恢 ...

  2. CentOS基本的命令与快捷建

    由于我的计算机在安装linux系统时,计算机出现了问题,并没有安装ubuntu而是安装的centos.虽然两者属于linux的不同版本,但是在具体的操作上大同小异.在学习linux的各种指令和快捷键的 ...

  3. Linux中Root密码破解

    1.开机后在选择菜单时按下e进入编辑模式 2.选择linux16这一行,在行末尾添加 rd.break 3.然后Ctrl+x执行.然后进入shell界面: 4.设置密码: 1.重新挂载根目录为读写模式 ...

  4. 数据库之mysql篇(4)—— navicat操作mysql

    navicat 1.简介: navicat是一个软件,旗下针对不同数据库有不同的软件版本,支持以下数据库,还是挺厉害的: 这里我采用navicat for mysql版本.实现图形化的操作mysql, ...

  5. IO测试工具之fio详解

    目前主流的第三方IO测试工具有fio.iometer和Orion,这三种工具各有千秋. fio在Linux系统下使用比较方便,iometer在window系统下使用比较方便,Orion是oracle的 ...

  6. docker基础学习(一)

    操作演示: 1.查看一个容器的版本 [root@ELK-chaofeng08 ~]# docker version Client: Version: API version: 1.39 Go vers ...

  7. Windows 版本说明,Enterprise、Ultimate、Home、Professional知多少

    关于Windows 的安装光盘版本很多种,很多人不知道选择哪些. Ultimate 旗舰版,VISTA开始有了这个级别,是最全最高级的,一般程序开发的电脑,玩游戏的电脑,建议用它,不过对配置稍有一些要 ...

  8. JavaScript -- 时光流逝(八):js中的事件Event的使用

    JavaScript -- 知识点回顾篇(八):js中的事件Event的使用 事件通常与函数配合使用,这样就可以通过发生的事件来驱动函数执行. (1) onabort : onabort 事件会在图像 ...

  9. C语言 投票系统:给定候选人,从键盘输入候选人的名字,统计票数,并输出最终获胜者

    投票系统:给定候选人名单,从键盘输入候选人的名字,统计票数,并输出最终获胜者.若投票人输入的名字不在其候选名单上,则该票数无效. //凯鲁嘎吉 - 博客园 http://www.cnblogs.com ...

  10. Python开发【第二篇】:基本数据类型

    运算符 1.算数运算 2.比较运算 3.赋值运算 4.逻辑运算 5.成员运算 基本数据类型 所有对象所具备的方法都保存在类中.对象和类的关系,举个例子:哺乳动物是类:此类下有两个对象,一个为狗.一个为 ...