MySQL 插入中文不乱码的5种方法

MySQL 插入中文不乱码的5种方法:

方法一:

登录MySQL,先做 set names latin1 ,然后在更新语句或者执行SQL语句

mysql> set names latin1;
mysql> source  test.sql;

方法二:

在SQL文件中指定set names latin1;然后登录MySQL,执行相应文件

  
[[email protected] ~]# cat test.sql 
set names latin1;
insert *****************;
mysql> source  test.sql;

方法三:

在SQL文件中指定set names latin1;然后通过MySQL命令导入

[[email protected] ~]# mysql -uroot -p123456 test <test.sql

方法四:

通过指定MySQL命令的字符集参数实现--default-character-set=latin1

 
[[email protected] ~]# cat test.sql 
insert *****************;
[[email protected] ~]# mysql -uroot -p123456 --default-character-set=latin1 test <test.sql

方法五:推荐此方法,但是建议使用utf8

在配置文件里设置客户端以及服务器端相关参数

即修改my.cnf 客户端的模块参数,可以实现set names utf8,且永久生效

[client]
   default-character-set=utf8 
   无需重启MySQL,退出当前登录,重新登录即可
[server]
   default-character-set=utf8   5.1以前的版本  
   character-set-server=utf8   5.5版本

库表,程序!

CREATE DATABASE wyb  DEFAULT CHARACTER SET utf8 collate utf8_general_cli;

字符集含义总结表

mysql> show variables like ‘character_set%‘;
 
| character_set_client     |  utf8     #客户端字符集                      
| character_set_connection  |  utf8     #链接字符集                      
| character_set_database    |  utf8     #数据库字符集,配置文件指定或者创建时指定                      
| character_set_results    |  utf8     #返回结果字符集                         
| character_set_server     |  utf8     #服务器字符集,配置文件,或者创建库,表时候指定
时间: 2024-11-20 22:47:07

MySQL 插入中文不乱码的5种方法的相关文章

MySQL插入中文数据乱码问题

一.MySQL插入中文不乱码5中方法小结 方法一:登录mysql,先做“set names latin1;”,然后再执行更新语句或执行语句文件. 方法二:在aql文件中指定set names latin1; 然后登录mysql,通过如下命令执行. 方法三:在sql文件中指定set names latin1; 然后通过mysql命令导入数据 方法四:通过指定mysql命令的字符集参数实现--default-character-set=latin1 方法五:在配置文件里设置客户端及服务端相关参数 不

解决osgEarth中文显示乱码的几种方法

解决osgEarth中文显示乱码的几种方法 在此感谢那些在路上那个帮助过别人的朋友,谢谢. 方法一: 通过自己写函数转换类型. 下面这三个函数先复制过去吧. void unicodeToUTF8(const std::wstring &src, std::string& result) { int n = WideCharToMultiByte( CP_UTF8, 0, src.c_str(), -1, 0, 0, 0, 0 ); result.resize(n); ::WideCharT

MYSQL导入中文数据乱码的四种解决办法

方法一:通过增加参数 --default-character-set = utf8 解决乱码问题 方法一:通过增加参数 --default-character-set = utf8 解决乱码问题 mysql -u root -p password < path_to_import_file --default-character-set = utf8 方法二:在命令行导入乱码解决 use database_name; set names utf8; (或其他需要的编码) source examp

Mysql插入中文记录乱码

1.修改配置文件my.ini设置编码方式为utf-8 [client] default-character-set=utf8 [mysqld] character-set-server=utf8 collation-server=utf8_general_ci init_connect=’SET NAMES utf8′ 重启mysql,后在命令行下输入: show varables like “%char%” 设置完成! 2.插入中文记录时出现错误 366 - Incorrect string

Mysql DBA 高级运维学习笔记-Mysql插入中文乱码问题

1.1 mysql插入中文数据乱码 1.1.1MySQL中添加中文数据并查看检表语句 a.创建cuizhong测试数据库并查看建表语句 mysql> create database cuizhong; Query OK, 1 row affected (0.00 sec) mysql> show create database cuizhong\G *************************** 1. row *************************** Database:

mysql 插入中文报错: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect datetime value...

总结写在前面, 总结: 当Java通过jdbc链接mysql插入中文时,要保证程序可以正常执行,而且插入的中文不会乱码, mysql服务器端,对数据表(不是数据库)的编码设置,要保证是支持中文的,例如gbk, gb2312, utf-8 jdbc的连接配置,要开启useUnicode=true,并且要设置一个支持中文的编码,不需要跟mysql表的编码保持一致,只需要支持中文就行.例如characterEncoding=utf8 本身的Java文件的编码需要支持中文 ===============

mysql 插入中文时出现ERROR 1366 (HY000): Incorrect string value: &#39;\xC0\xEE\xCB\xC4&#39; for column &#39;usern ame&#39; at row 1

1 环境: MySQL Server 6.0  命令行工具 2 问题 :  插入中文字符数据出现如下错误: ERROR 1366 (HY000): Incorrect string value: '\xC0\xEE\xCB\xC4' for column 'usern ame' at row 1 3 当时环境: mysql> insert into user(id , username , birthday, sex, address) values('2' , ' 李四' , '1980 12

mysql 插入中文字段报错 &quot;Incorrect string value: &#39;\\xE6\\xB5\\x8B\\xE8\\xAF\\x95...&#39; for column &#39;title&#39; at row 1&quot;

1. 查看一个 database 或一个 table 的编码show create database mytestdb;show create table testapp_article; mysql> show create table testapp_article;+-----------------+-----------------------------------------------------------------------------------------------

web.py+mysql插入中文提示query = query.encode(charset) UnicodeEncodeError: &#39;latin-1&#39; codec can&#39;t encode characters in position 86-100

对于中文编码的问题,总会出现各种各样恶心的错误,还不知道应该怎么解决,首先,你从最开头就应该关注编码问题,尽量保证所有的编码方式都是一致的 用python+web.py+mysql来写程序,首先要保证如下几个部分的编码都是对滴 主要包括如下几个部分: 1:python 写的程序, 统一用 utf-8 ,以及重新载入utf-8 2: web.py 的模板, 也就是html程序  统一保存格式为utf-8 , 并且html 申明 <meta http-equiv="Content-Type&q