文本列中的非英语字符混乱。阿拉伯文本看起来像这样:
نـجـم سـهـيـل
如何正确存储非英语字符?
您应该考虑使用utf8来存储文本。
您可以在创建数据库时执行此操作:
CREATE DATABASE mydb
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_general_ci;
您也可以在安装或启动时配置mysql以使用utf8(请参见Mysql手册)。
Mysql手册页面涵盖了字符集和校对方面的所有内容:http://dev.mysql.com/doc/refman/5.0/en/charset.html
连接的字符集可以通过以下方式更改:
SET CHARACTER SET utf8
ALTER TABLE tbl_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
你使用的操作系统是什么?
如果是Linux,则最好将系统区域设置为utf8,例如“en_US.utf8”。
并且,为了确保,请在连接后立即发出“SET NAMES UTF8”命令到mysql。
(数据库字符集/排序规则也必须是utf8)