中文字符插入mysql

时间:2011-06-18 10:09:52

标签: java mysql encoding cjk

我在MySQL中插入中文字符时遇到问题。我只能在Query Browser / Workbench中插入中文字符,但它出现为'??'使用我的程序时。我以某种方式设法让它在我的计算机上工作(Windows 7),但当我在另一台(Windows 7上)上测试它时,它出现了问号。它也无法在Windows XP中文版上运行。有什么帮助吗?

2 个答案:

答案 0 :(得分:0)

驱动程序正在以UTF-8传输,看到您对连接字符串的评论。数据库表字段也可能指定为UTF-8(选中此项)。

所以你在Java中有一个普通的Unicode字符串。通过转储String.getBytes("UTF-8")检查。不应出现问号。

在Web应用程序中,您需要在使用Writer之前设置编码。否则你会得到这样的任务。错误的其他可能性是String.getBytes()(默认操作系统编码),FileOutputStream上的Writer使用StreamOutputStream也没有编码。

答案 1 :(得分:0)

1.使用cmd连接数据库 例如:

D:\MySQL\bin>mysql -u root -D test -p

2.将数据库更改为UTF-8 例如:

mysql>alter database [database name] default character set utf8