欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Mysql字符集设置为utf8,怎么插入中文还是ERROR 1406 (22001): D

程序员文章站 2022-05-30 20:22:14
...

1。确保my.ini中涉及到字符的参数都是utf8 2。如果直接用mysql的命令行(开始菜单下的Command Line Client)会有问题,它直接使用my.ini中的default-character-set=utf8连接,而我们的机器字符集基本都是GBK。要在command下使用: mysql -uroot -p --default-c

1。确保my.ini中涉及到字符的参数都是utf8
2。如果直接用mysql的命令行(开始菜单下的Command Line Client)会有问题,它直接使用my.ini中的default-character-set=utf8连接,而我们的机器字符集基本都是GBK。要在command下使用:
mysql -uroot -p --default-character-set=gbk
命令来登录,因为字符集设置为utf8,但机器环境是GBK,mysql貌似不能自动转换。使用这个default的本意应该是保证Client和Conn的一致。

而使用某些GUI可能不会存在这个问题。不过习惯了用命令行,所以这里记录一下。
登录后:
mysql> status
--------------
mysql Ver 14.12 Distrib 5.0.22, for Win32 (ia32)

Connection id: 5
Current database: test
Current user: root@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.0.22-community-nt
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: utf8
Db characterset: utf8
Client characterset: gbk
Conn. characterset: gbk
TCP port: 3306
Uptime: 14 min 53 sec

Threads: 1 Questions: 20 Slow queries: 0 Opens: 1 Flush tables: 1 Open tables: 6 Queries per second avg: 0.022
--------------

mysql> quit