我有一个156个字符的多字节文本,以UTF-8格式编码,并通过PHP函数mb_strlen($text, 'UTF-8')验证其长度为156。我本来希望能用VARCHAR(156)来存储所有的数据。但有相当一部分文字被删节了。
这是我的原文:
위키백과, 백과사전.
대수(λ-,λ-)는함。1930年。함수s(x,y)=xx+입력x것이다。x↦x와年
↦y는변수의이름은。또한(x,y)↦xx+yy와(u,v)↦uu+v*v는123456
这是我在MySQL中得到的:
위키백과, 백과사전.
嫒嫒嫒嫒嫒嫒嫒嫒(Î-,lambda-)嫒嫒嫒嫒。1930年。í•ìˆs(x,y)=x*x+
ììèèèèèèèèèèèèèè。x–xìììì
这是在我的网页上查询时生成的:
위키백과, 백과사전.
대수(λ-,λ-)는함。1930年。함수s(x,y)=x*x+입력x것이다。x↦x와年
↦y는변수
堆栈上也有一个类似的question溢出,但似乎不能解决我的问题。请注意,表CHARSET=utf8排序规则已更改为UTF-8, General CI,列排序规则使用表默认值。我使用MySQL版本5.5.14,系统变量如下所示:

+--------------------------+----------------------------------------+
| Variable_name            | Value                                  |
+--------------------------+----------------------------------------+
| character_set_client     | utf8                                   |
| character_set_connection | utf8                                   |
| character_set_database   | utf8                                   |
| character_set_filesystem | binary                                 |
| character_set_results    | utf8                                   |
| character_set_server     | utf8                                   |
| character_set_system     | utf8                                   |
| character_sets_dir       | /usr/local/mysql/share/mysql/charsets/ |
| collation_connection     | utf8_general_ci                        |
| collation_database       | utf8_general_ci                        |
| collation_server         | utf8_general_ci                        |
+--------------------------+----------------------------------------+

更新:
在按照Homer6的建议在PHP脚本上运行mysqli_query($cxn, "SET NAMES utf8")之后,它确实接受了完整的156个字符,并按照我的原始文本呈现。
但现在我的网页上生成的内容变成:
????, ????. ??(? -,兰姆达-??. 1930年?? ?. ??s(x,y)=xx+??x轴
???.x吗?x?是吗?是吗???? ???. ??(x,y)?xx+yy?(u,v)?uu公司+
v*v?.123456号
有人能帮我吗?

最佳答案

你能试着把尺寸扩大两倍到624吗?我认为大小是字节,而不是字符。UTF-8可以在1到4字节之间。
http://unicode.org/faq/utf_bom.html
还有,你准备好了吗

SET NAMES 'utf8';

在运行查询之前?
或者,对于韩国人,如果你设置
mysql_query( 'SET NAMES euckr_korean_ci' );

在你询问之前?
http://dev.mysql.com/doc/refman/5.1/en/charset-asian-sets.html

08-26 19:46