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

2023年 4月 26日 38.9k 0

方法一: 登录MySQL,先做 set names latin1 ,然后在更新语句或者执行SQL语句 mysql set names latin1;mysql source test.sql; 方法二: 在SQL文件中指定set names latin1;然后登录MySQL,执行相应文件 [root@loc

方法一:
登录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” 博客

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论