创建表名时中文中内有英文字符的表出错,如:
CREATE TABLE IF NOT EXISTS 名_称 (
name varchar (255) NOT NULL ,
val varchar (255) NOT NULL DEFAULT ''
);
英文开头或者结尾都没有问题,如q名称、名称q、q名称q、_名称_ ,唯独中文内有英文字符就出错。
如何解决?
修改my.ini的57行
default-character-set=gb2312
和81行
default-character-set=gb2312
之后重新启动了mysql;
通过status命令查看
server character set:gb2312
Db character set:gb2312
Client character set:gb2312
Conn. character set:gb2312database 的character set 设置为gbk和gb2312都试过了.
CREATE TABLE IF NOT EXISTS 名_称 (
name varchar (255) NOT NULL ,
val varchar (255) NOT NULL DEFAULT ''
);
英文开头或者结尾都没有问题,如q名称、名称q、q名称q、_名称_ ,唯独中文内有英文字符就出错。
如何解决?
修改my.ini的57行
default-character-set=gb2312
和81行
default-character-set=gb2312
之后重新启动了mysql;
通过status命令查看
server character set:gb2312
Db character set:gb2312
Client character set:gb2312
Conn. character set:gb2312database 的character set 设置为gbk和gb2312都试过了.
set names gbk;
CREATE TABLE IF NOT EXISTS 名_称 (
name varchar (255) NOT NULL ,
val varchar (255) NOT NULL DEFAULT ' '
);
不过强烈建议表名为英文。
安装6.0后,测试发现成功了。
看来6.0还是有很大的改进啊。