SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 02.10.2008 12:22:02

Chendjer
Участник
Зарегистрирован: 17.02.2008
Сообщений: 12

проблема с базой

есть база. неизвестно в какой оригинальной кодировке хранятся данные.. если просматривать записи через phpMyadmin то все записи выглядят вопрос. знаками.., перепробовал все кодировке, результат один - всегда вопрос. знаки.. что делать?

Неактивен

 

#2 02.10.2008 12:28:51

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5831

Re: проблема с базой

Скорее всего latin1
Посмотрите http://sqlinfo.ru/articles/info/5.html и тему http://sqlinfo.ru/forum/viewtopic.php?id=132

там описано решение подобной проблемы, если не поможет спрашивайте ещё.

Неактивен

 

#3 02.10.2008 12:51:15

Chendjer
Участник
Зарегистрирован: 17.02.2008
Сообщений: 12

Re: проблема с базой

в файле таблицы *.MYD одни вопросит. занки

Неактивен

 

#4 02.10.2008 14:59:35

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: проблема с базой

Именно вопросительные знаки, или символы, которых нет в шрифте, которым редактор
отображает текст? Совпадают ли у них HEX-значения?

Если именно вопросительные знаки, то, конечно, самих данных там уже нет sad

Неактивен

 

#5 02.10.2008 18:46:25

LazY
_cмельчак
MySQL Authorized Developer and DBA
Зарегистрирован: 02.04.2007
Сообщений: 848

Re: проблема с базой

Если именно вопросительные знаки, то, конечно, самих данных там уже нет

Почему?

Мне кажется, что если admin настроен на latin1, а данные в utf8, например, то там как раз будут вопросительные знаки

Неактивен

 

#6 02.10.2008 19:25:36

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: проблема с базой

Если в файле .MYD символы вопросительных знаков, то откуда бы тогда взять информацию? wink

Неактивен

 

#7 03.10.2008 00:42:39

LazY
_cмельчак
MySQL Authorized Developer and DBA
Зарегистрирован: 02.04.2007
Сообщений: 848

Re: проблема с базой

Оттуда же. Потому что если программа-просмотрщик не понимает UTF8, она будет показывать знаки вопроса.
Вот тебе пример:

mysql> SELECT f FROM webew.таблица_с_юзерами WHERE f IS NOT NULL LIMIT 5;
+--------+
| f      |
+--------+
| ?????? |
| ?????? |
| NULL   |
| ?????  |
| NULL   |
+--------+
5 rows in set (0.00 sec)

Хотя известно, что с данными все нормально.
А все потому что

mysql> SELECT @@character_set_client;
+------------------------+
| @@character_set_client |
+------------------------+
| latin1                 |
+------------------------+
1 row in set (0.00 sec)

Неактивен

 

#8 03.10.2008 10:40:12

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: проблема с базой

Эм... ты путаешь "программу-просмотрщик" и "сервер MySQL". Сравни:

Код:

mysql> create table smarks (a char(10)) engine=myisam;
mysql> insert smarks values ('абв');
mysql> create table qmarks (a char(10)) engine=myisam;
mysql> insert qmarks values ('???');

aquatica:/var/lib/mysql/test# cat smarks.MYD
�абв                        
aquatica:/var/lib/mysql/test# cat qmarks.MYD
�???

В данном случае "программа-просмотрщик" - cat + терминал.

Неактивен

 

#9 03.10.2008 20:47:37

LazY
_cмельчак
MySQL Authorized Developer and DBA
Зарегистрирован: 02.04.2007
Сообщений: 848

Re: проблема с базой

А это не потому, что у тебя терминал в utf8 и таблица в ней же?

Неактивен

 

#10 03.10.2008 21:53:28

Kassad
Участник
Зарегистрирован: 01.10.2008
Сообщений: 10

Re: проблема с базой

Господа, вы раздули из мухи слона. Вопросы не могли появится просто так, я подозреваю, что они возникли в ходе заливки неуспешно созданного дампа и там будут именно вопросы. Пусть автор топика расскажет откуда у него эта таблица. Если она была получена путём копирования/переноса, то естественно там должна быть информация, а если то, что я написал в начале, то нет.

С точки зрения логики только MySQL возвращает для удобства символы в вопросах, а другие редакторы будут показывать либо закорючки, любо вообще ничего, либо знаки "четырёхуголников" (�). Так что если в редакторе вопросы, то там не двоичные значения, а именно вопросы.

Неактивен

 

#11 03.10.2008 22:02:08

LazY
_cмельчак
MySQL Authorized Developer and DBA
Зарегистрирован: 02.04.2007
Сообщений: 848

Re: проблема с базой

С точки зрения логики только MySQL возвращает для удобства символы в вопросах, а другие редакторы будут показывать либо закорючки, любо вообще ничего, либо знаки "четырёхуголников" (�). Так что если в редакторе вопросы, то там не двоичные значения, а именно вопросы.

Как-то не задумывался над этим.
Тогда всё понятно.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson