数据库 
首页 > 数据库 > 浏览文章

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

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

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

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

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

[root@localhost ~]# cat test.sql 
set names latin1;
insert *****************;
mysql> source test.sql;

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

[root@localhost ~]# mysql -uroot -p123456 test <test.sql

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

 
[root@localhost ~]# cat test.sql 
insert *****************;
[root@localhost ~]# 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  #服务器字符集,配置文件,或者创建库,表时候指定

本文出自 “crazy_sir” 博客

上一篇:MySQL删除数据库的两种方法
下一篇:MySQL学习第六天 学习MySQL基本数据类型
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。