0

大家好,我目前正在使用phpmyadmin来构建表格,但我遇到了几个问题。

这些是我当前的设置:

Server: localhost via TCP/IP
Server version: 5.5.16
Protocol version: 10
User: root@localhost
MySQL charset: UTF-8 Unicode (utf8)
Apache/2.2.21 (Win32) mod_ssl/2.2.21 OpenSSL/1.0.0e PHP/5.3.8 mod_perl/2.0.4
Perl/v5.10.1
MySQL client version: mysqlnd 5.0.8-dev - 20102224 - $Revision: 310735 $
PHP extension: mysql

我正在尝试填充我的语言列的 native_name 列。

它必须看起来像这样:

Language ID  Language Code  Language name   Native name   Active
-----------  -------------  -------------   ------------  ------
1            afr            Afrikaans       Afrikaans     0
2            sqi            Albanian        gjuha shqipe  1
3            ara            Arabic          العربية
4            spa            Spanish         Espanol       1
5            eng            English         English       1

但我得到的是:

Language ID  Language Code  Language name   Native name   Active
-----------  -------------  -------------   ------------  ------
1            afr            Afrikaans       Afrikaans     0
2            sqi            Albanian        gjuha shqipe  1
3            ara            Arabic          ?????????
4            spa            Spanish         Espanol       1
5            eng            English         English       1

在此处输入图像描述

好的,故事就是这样进行的。正如您从上面的示例中知道的那样;本机名称列必须包含一大堆奇怪的字符。我拿到 ???????在通过 SQL 进行插入时输入,所以我决定也许内联编辑可以解决问题。

保存我的在线编辑后,我粘贴的阿拉伯语文本恢复为??????? ???在页面刷新。

在此处输入图像描述

关于如何解决这个问题的任何想法?如您所见,它发生在表中的所有字符(即日文、中文等)上!

4

1 回答 1

1

基本上,根据您的评论,您的表/列上有无效的字符集和排序规则,因此您需要执行字符集转换并可能重新填充表本身......

ALTER TABLE [table] MODIFY [column] [type] CHARACTER SET utf8 COLLATE utf8_general_ci; ALTER TABLE [table] DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

检查这些链接:

于 2012-08-01T22:42:12.533 回答