Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Кодировка базы данных
 
 автор: NanoGame   (12.06.2009 в 14:37)   письмо автору
505 байт
 
 

Добрый день!

Возникла проблема с кодировкой в базе данных. На проект реализуется поддержка русских ников, в скрипте все отлично отображается, но вот в PMA кодировка сбитая. Причина этому - соединение в скрипте устанавливается latin1, а в PMA видимо utf8. Базу надо перекодировать в utf8. Все отлично, сделал дамп, но он нечитаем, такая же сбитая кодировка. Пробывал конвектировать:

iconv -c -f ISO-8859-1 -t UTF-8 dump_bdname.sql > dump_bdname_utf8.sql

Но читаемым и не становится... Вот и не знаю, как теперь привести базу в читаемый вид.
Приложил файл с запросом из дампа, подскадите как превратить в читаемый вид...

  Ответить  
 
 автор: Trianon   (12.06.2009 в 14:44)   письмо автору
 
   для: NanoGame   (12.06.2009 в 14:37)
 

Приведенный фрагмент уже битый.
Как выглядит структура таблицы?



Не понимаю, чем народ думает... у половины соединение latin1
В latin1 НЕТ РУССКИХ БУКВ!

  Ответить  
 
 автор: NanoGame   (12.06.2009 в 14:55)   письмо автору
 
   для: Trianon   (12.06.2009 в 14:44)
 

Знаю, что не тем местом думал, когда создавал проект ) Сейчас после соединения с MySQL принудительно уже ставлю UTF-8, а по умолчанию ставится latin1. Сейчас вот и мучаюсь.

CREATE TABLE IF NOT EXISTS `chat` (
`id` int(3) NOT NULL auto_increment,
`name` varchar(16) character set utf8 collate utf8_unicode_ci default NULL,
`msg` text character set utf8 collate utf8_unicode_ci NOT NULL,
`time` varchar(20) character set utf8 collate utf8_unicode_ci default NULL,
`privat` varchar(15) character set utf8 collate utf8_unicode_ci NOT NULL default '',
PRIMARY KEY (`id`),
KEY `time` (`time`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=537669 ;

  Ответить  
 
 автор: NanoGame   (12.06.2009 в 15:04)   письмо автору
 
   для: NanoGame   (12.06.2009 в 14:55)
 

Ед. способ, который даст 100% нужный результат, это перегонять все из базы в базу на PHP с указанием нужных кодировок. Но! База весит почти 1 гб, поэтому это ОЧЕНЬ на долго затянется...

  Ответить  
 
 автор: Trianon   (12.06.2009 в 15:28)   письмо автору
 
   для: NanoGame   (12.06.2009 в 15:04)
 

>Ед. способ, который даст 100% нужный результат, это перегонять все из базы в базу на PHP с указанием нужных кодировок.

Так и действуйте.

>Но! База весит почти 1 гб, поэтому это ОЧЕНЬ на долго затянется...

Ну и что? Разве это высокая плата? Вот если бы Вы данные напрочь потеряли бы при очередной миграции с сервера на сервер - тогда да.

  Ответить  
 
 автор: NanoGame   (12.06.2009 в 21:21)   письмо автору
 
   для: Trianon   (12.06.2009 в 15:28)
 

Онлайн на проекте от 300 до 500, поэтому откат базы на 4-5 часов (думаю столько, конвертироваться будет) не приемлем. А отключать доступ тем более.

  Ответить  
 
 автор: 01010101   (13.06.2009 в 00:06)
 
   для: NanoGame   (12.06.2009 в 21:21)
 

Что за проект? Web/Wap? Имею опыт работы с посещаемыми проектами, на которых приходилось менять старые скрипты на свои (был и чат), вставлять костыли старым скриптам (в том числе и конвертирование бд). Если интересует решение вопроса за умеренные деньги, то могу оставить свои контакты.

  Ответить  
 
 автор: NanoGame   (13.06.2009 в 00:40)   письмо автору
 
   для: 01010101   (13.06.2009 в 00:06)
 

К сожалению работаю один, максиум, что могу сделать, это обратиться за советом, что и сделал сейчас. Но спасибо за предложение.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования