2012-09-09 25 views
1

我创建了一个表让我们说例子。并插入值,如下所示:如何在mysql表中插入西里尔符号?

insert into Example (column1) 
values ('оарвыларфдл'); 

然后我尽量选择从表中的数据,并输出结果是:??????????

+0

设置表/列类型UTF 8? – Nishant

回答

1

你搞砸了你的字符集的地方:表,连接,输出,或这些的组合使用不正确的字符集 - 所以一定要确保他们所有的比赛和使用的字符集,可以代表你字符 - UTF-8通常是最好的选择,因为它可以代表一切。

这是不可能比这更准确,因为你没有提供关于哪些字符集各这些东西都是使用的任何信息。

+0

我使用Zend Framework,WampServer2.2a-x32.exe,Zend Studio(我设置了encoding = utf-8)和HeidiSql来管理MySql表。我尝试在httpd.conf,my.ini和php.ini中查找,但没有发现任何编码设置 – Andrei

+0

@Andrei:这不会让我更接近解决问题,因为它没有告诉我关于你的什么真的在做。你如何检查数据;你是从你的PHP代码中选择它,还是在HeidiSQL中检查它?如果你在HeidiSQL中检查它,那么表格可能没有正确创建,或者当你插入数据时它没有被正确地发送(它在发送之前被转换为latin1)。最有可能的是表格定义是错误的,但如果不是这样,有几个地方可能出现错误,我不知道哪一个是实际问题。 –

+0

好吧,我会更具体一些:西里尔语符号首先在HeidiSQL中显示错误。当我创建表时,我正在使用以下代码:创建表头( id integer(9)not null主键auto_increment, date date not null, en varchar(512)not null, ro varchar(512) not null, ru varchar(512)not null);我介绍数据,如下所示:插入标题(ru)值('оолполпт');而我输入:select * from headers;输出是:????????浏览器以与HeidiSql完全相同的方式显示它。 – Andrei