MySQL有字符集功能来设置整个系统使用的字符集,包括database,client,server等等,可惜的是MySQL居然把system字符集给定死为utf8,可以通过"show variables like 'character_set_%'"来查看,其中character_set_system就是程序中使用的字符集,默认是utf8,该变量被设置为只读. 由于需要MySQL返回的error信息包括日文字段名,所有只能修改一下source了.
主要修改为以下几个文件, libmysqld目录下的set_var.cc和sql_prepare.cc, sql目录下的mysqld.cc, set_var.cc , sql_prepare.cc(Linux版的 .cc文件 对应 windows版的 .cpp文件,Source版本Red Hat Enterprise Linux 4)
找到 my_charset_utf8_general_ci
更改为 my_charset_sjis_japanese_ci
改完后重新编译即可使用
安装完后修改my.cnf(windows对应my.ini),添加以下内容
[mysqld]
default-charater-set=sjis
init_connect=set names sjis
language=japanese-sjis
[mysql]
default-charater-set=sjis
全部修改完后重新启动MySQL,至此日文版MySQL作成