如何存储非英文字符?

时间:2010-06-09 18:54:27

标签: mysql

非英文字符在文本列中混乱。阿拉伯文字看起来像这样:

  

نـ؀ـ......سـ‡‡€Ùـٓ

如何正确存储非英文字符?

3 个答案:

答案 0 :(得分:12)

您应该考虑使用 utf8 来存储文字。

您可以在创建数据库时执行此操作:

CREATE DATABASE mydb
  DEFAULT CHARACTER SET utf8
  DEFAULT COLLATE utf8_general_ci;

您还可以在安装或启动时配置mysql以使用utf8(请参阅Mysql manual)

mysql手册页面涵盖了字符集和排序规则的所有方面:http://dev.mysql.com/doc/refman/5.0/en/charset.html

可以通过

更改连接的字符集
SET CHARACTER SET utf8

更多详情here以及Character set support

一章

答案 1 :(得分:2)

你在使用什么操作系统?

如果Linux那么系统区域设置也设置为utf8也很好,比如“en_US.utf8”。

并且,确保在连接后立即向mysql发出“SET NAMES UTF8”命令。

(db character set / collat​​ion也必须是utf8)

答案 2 :(得分:1)

下面的查询解决了这个问题。

ALTER TABLE tbl_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;