mysql中的中文不能显示怎么办

2 02 2 年,我在某个城市,遇到了MySQL中文显示问题。
当时我懵了,不知道怎么办。
后来我查了一下,发现解决方法有几个。

首先,要修改MySQL的配置文件my.ini,把default-character-set参数从latin1 改成gbk。
这个改动得同时应用到客户端和服务端。
如果dataadir路径下有个db.opt文件,也得把里面的字符集从latin1 改成gbk,排序规则也改了。

改完之后,别忘了重启MySQL服务,让配置生效。
这样以后创建的表就会默认用GBK编码了。

然后,如果表里已经有数据了,得先清空表。
比如用TRUNCATETABLE命令。
接着,再用ALTERTABLE命令修改字段的字符集。
比如,把用户表users的username字段从CHAR(2 0)改为CHARACTERSETgbk。

最后,数据重新插入,问题就解决了。

不过,还有一些注意事项。
比如,Windows默认使用gb2 3 1 2 ,MySQL安装时客户端和服务端可能默认latin1 ,这就会导致编码冲突。
如果遇到Can't create table错误,可能是数据文件冲突,得删除重建数据库。

总的来说,配置文件修改是解决问题的关键。
确保服务端、客户端和表字符集一致。
对于已有数据的表,字段级调整是可行的,但操作时要小心,最好先备份。
字符集统一推荐用gbk或者utf8 mb4

mysql中汉字用什么类型 中文字段类型选择

上周跟你提过mysql的汉字处理问题。
确实应该用utf8 mb4 字符集。

2 02 3 年那个项目用utf8 的时候出过事。
用户输入生僻字就乱码了。
后来改utf8 mb4 就好了。

我那个朋友做论坛的。
文章内容用TEXT+全文索引。
搜索快了好多。

表设计可以这样: sql CREATE TABLE user_info ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(5 0) CHARACTER SET utf8 mb4 COLLATE utf8 mb4 _unicode_ci, content TEXT CHARACTER SET utf8 mb4 COLLATE utf8 mb4 _unicode_ci );
刚想到另一件事。
如果字段长度固定短文本。
比如用户名5 0个字以内。
就用VARCHAR(5 0)。

长文本比如文章。
就用TEXT类型。
反正TEXT不用限制长度。

算了。
你看着办。

mysql怎么把字段名变成中文

上周试了下sql操作。

1 、创建测试表,成功了。
sql create table test_zw (idnumber int, v_datedate int);
2 、插入测试数据,也成功了。
sql insert into test_zw values (1 , 2 01 9 01 01 ); insert into test_zw values (2 , 2 01 9 01 02 ); insert into test_zw values (3 , 2 01 9 01 03 ); insert into test_zw values (4 , 2 01 9 01 04 );
3 、查询表中记录,看到了4 条数据。
sql select t. from test_zw t;
4 、编写sql,将v_date字段翻译为中文'日期',也搞定了。
sql select t., V_DATE AS '日期' from test_zw t;
算了。