|
 3.7 Кб |
|
| Мне прислали дамп просто ужасной базы.
Мне нужно из него сделать базу хотя бы с нормальной кодировкой.
Сижу в Декодере пробую разные цепочки кодировок, пока не получается
Пока самая подходящая: CP1252->UTF-8
Пробовал еще KOI8-R->CP1252->UTF-8
Но теряются некоторые буквы.
Помогите разобраться, плиз.
Часть этого двухметрового дампа в аттаче | |
|
|
|
|
|
|
|
для: ddhvvn
(04.06.2011 в 21:54)
| | Вот что попробуйте UTF8 -> CP1252 и открывайте файл в кодировке CP1252, берите содержимое его и сохраняйте в удобной для вас кодировке. | |
|
|
|
|
|
|
|
для: cheops
(05.06.2011 в 08:50)
| | Не помогает.
Если делать с помощью iconv, то он выдает "illegal input sequence at position 3340", если добавить опцию -c, то текст конвертируется также как и через декодер - с битыми буквами. | |
|
|
|
|
|
|
|
для: ddhvvn
(05.06.2011 в 13:11)
| | А оригинальный дамп большой? Не получится его сюда забросить? | |
|
|
|
|
|
|
|
для: cheops
(05.06.2011 в 14:23)
| | Около полутора мегабайт.
Если хотите сами попробовать, то это сделать можно на прикрепленном куске дампа.
На нем то же самое происходит с некоторыми словами. | |
|
|
|
|
|
|
|
для: ddhvvn
(05.06.2011 в 18:20)
| | Я попробовал и у меня вроде никаких аномалий нет (я почему весь дамп и попросил, подумав, что кусок слишком короткий и я не могу увидеть сбои в конечном результате)
INSERT INTO `categories` (`id`, `name1`, `name2`, `name3`) VALUES (16,'Квартиры','Pisos -
Estudios','Apartments - Flats'),(17,'Шале','Chalets','Townhouses'),(18,'Виллы','Villas','Villas'),(19,'Земл
|
| |
|
|
|
|
|
|
|
для: cheops
(05.06.2011 в 19:22)
| | а как/с помощью чего вы делали?
У меня
INSERT INTO `categories` (`id`, `name1`, `name2`, `name3`) VALUES (16,'Квартиры','Pisos - Estudios','Apartments - Flats'),(17,'Шале','Chalets','Townhouses'),(18,'Виллы','Villas','Villas'),(19,'Землϧ,'Terrenos - Parcelas','Land - Plots'),(21,'Коммер.нед','Locales - Oficinas','Commercials'),(22,'Отели','Hoteles','Hotels'),(23,'ѐ¾воґ‚ройк','Nueva construccion','New Constructions'),(24,'Элит.недв.','Viviendas de Lujo','Luxury Houses');
|
P.S.: весь дамп тут http://vlal.ru/dump.sql | |
|
|
|
|
|
|
|
для: ddhvvn
(05.06.2011 в 20:34)
| | А нет не получается на "Земл" спотыкается. Делал так: пропустил файл через
iconv("UTF-8", "Windows-1252", $text);
|
потом открыл его в utf-8.
PS К сожалению, после преобразования в многобайтную кодировку получить данные в адекватной форме почти невозможно, особенно символы, которые залазят в многобайтную область. | |
|
|
|
|
|
|
|
для: cheops
(05.06.2011 в 20:50)
| | ну вот по дампу видите какая структура и локаль базы?
если получить доступ к базе, как можно сделать дамп в адекватном виде? | |
|
|
|
|
|
|
|
для: ddhvvn
(05.06.2011 в 22:17)
| | А истинная кодировка данных какая? В первую голову хорошо бы избавиться от latin1 в таблицах - в этом случае все проблемы пропадут автоматически. | |
|
|
|
|
|
|
|
для: cheops
(06.06.2011 в 09:29)
| | Ну на сайт выводится вроде utf-8.
А как избавиться то? Нужно же перекодировать содержимое? Или изменить в настройках таблиц? | |
|
|
|
|
|
|
|
для: ddhvvn
(07.06.2011 в 13:33)
| | Т.е. внутри таблиц данные в UTF8 или при соединении с СУБД MySQL осуществляется запрос
SET NAMES utf-8? Здесь нужны данные именно по тому в какой кодировке хранится информация внутри таблиц. Если это UTF-8, то параметр CHARACTER SET таблиц нужно изменить на utf8 и извлекать дамп. | |
|
|
|
|
|
|
|
для: cheops
(07.06.2011 в 13:38)
| | Если бы в базе было utf-8, то я бы не мучился :)
Но при подключении "SET NAMES ..." я тоже не обнаружил, поэтому что-то вообще непонятно... | |
|
|
|
|
|
|
|
для: ddhvvn
(07.06.2011 в 23:16)
| | Вообще странно, я заметил, что повреждены только буквы я,в,с. Причем как строчные, так и заглавные. | |
|
|
|