mysql无法输入汉字

mysql无法输入汉字,第1张

方法一:在插入中文之前 先输命令set names gbk 告诉客户端你在这里敲的命令是GBK编码的 客户端会把你接下来敲的命令转成UTF-8 你数据库内部的编码还是UTF-8

方法二:修改你安装目录下面的my.ini这个文件 编辑这个文件 找到

[mysql]

default-character-set=utf8

把default-character-set=utf8改成default-character-set=GBK

这里的意思是告诉MySQL你在客户端敲的命令都是GBK编码

注:不用改[mysqld]下面的default-character-set 这里的default-character-set指的是MySQL底层存储的字符集编码 可以是utf8 utf8是支持各国文字的

改过后重启服务

方法三:根据向导重新配置 把编码设成gbk或gb2312 不过这把你MySQL内部的字符集编码都改变了 不建议

如果是

主键

不能有重复的记录,如果你输入的中文已存在就不能再输入了,你可以输入其它中文试试

另外,数据库使用gbk编码,你的页面也要使用gbk编码,避免引起

乱码

建议不要把有可能出现重复值的列作主键。

可能原因一:数据库不支持中文,或者是数据库编码格式和java代码编码格式不一致,这种情况需要修改数据库编码格式:

ALTER SYSTEM DISABLE RESTRICTED SESSION改完编码后执行

sql> conn / as sysdba

sql> shutdown immediate

database closed.

database dismounted.

oracle instance shut down.

sql> startup mount

oracle instance started.

total system global area  135337420 bytes

fixed size                          452044 bytes

variable size                     109051904 bytes

database buffers              25165824 bytes

redo buffers                      667648 bytes

database mounted.

sql> alter system enable restricted session

system altered.

sql> alter system set job_queue_processes=0

system altered.

sql> alter system set aq_tm_processes=0

system altered.

sql> alter database open

database altered.

sql> alter database character set internal_use UTF-8

sql> shutdown immediate

sql> startup

可能原因二:java代码生成插入语句的时候,已经发生乱码现象,这种只能是修改项目编码格式或者是在数据获取的时候直接转译代码编码格式来实现了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10818233.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-11
下一篇2023-05-11

发表评论

登录后才能评论

评论列表(0条)

    保存