Кодировка в базе...

Сенсей

Новичок
Кодировка в базе...

Есть сервак... админ не я...
Есть сайт... на мускуле...

Теперь.. я до сих пор не могу понять в какой кодировке текст в базе держится... ибо:

Захожу в phpmyadmin и вижу:

* MySQL charset: UTF-8 Unicode (utf8)
* MySQL connection collation: utf8_general_ci
* В таблицах - collation: latin1_swedish_ci

Но в том же phpmyadmin русский текст виден как: ?????????? ?? ??????
Пробовал наверное все кодировки которые имеются в браузере - все равно отражаются каракули...

Но - на сайте весь текст вывожу как windows-1251
И все работает вроде как нормально...

Все бы ничего... меня бы это и не волнавало, но я бэкап не могу сделать... phpmyadmin и dumper - русский текст как каракули записывают...

Собственный бэкапер - не берет базу весом d 10Mb :(

Что делать?
Как сделать нормальный бэкап базы?
И что эта utf8_general_ci и
* В таблицах - collation: latin1_swedish_ci
значат?
 

Flexx

Guest
Re: Кодировка в базе...

Автор оригинала: Сенсей
Есть сервак... админ не я...
Есть сайт... на мускуле...

Теперь.. я до сих пор не могу понять в какой кодировке текст в базе держится... ибо:

Захожу в phpmyadmin и вижу:

* MySQL charset: UTF-8 Unicode (utf8)
* MySQL connection collation: utf8_general_ci
* В таблицах - collation: latin1_swedish_ci
Что значит "В таблицах - latin1_swedish_ci"? Ты ведь с виндовой кодировкой работаешь. Значит поставить на свои таблицы cp1251_general_ci.

Но в том же phpmyadmin русский текст виден как: ?????????? ?? ??????
Пробовал наверное все кодировки которые имеются в браузере - все равно отражаются каракули...
Причём здесь кодировки браузера? phpmyadmin работает с любыми кодировками. На главной странице выбери: Language "Russian (ru-utf-8)"


Что делать?
Как сделать нормальный бэкап базы?
И что эта utf8_general_ci и
* В таблицах - collation: latin1_swedish_ci
значат?
Это значит, что на свои таблицы ты поставил кодировку Latin1 шведскую. Как ты думаешь, в шведском алфавите есть русские буквы? Нет? Тогда почему возник вопрос: "А почему русские отображаются как: ????".
 

Сенсей

Новичок
Это значит, что на свои таблицы ты поставил кодировку Latin1 шведскую. Как ты думаешь, в шведском алфавите есть русские буквы? Нет? Тогда почему возник вопрос: "А почему русские отображаются как: ????".
-----------------------------
Тогда как может быть что когда я беру текст с базы скриптом - на сайте русский текст виден?
---
Ты ведь с виндовой кодировкой работаешь. Значит поставить на свои таблицы cp1251_general_ci.

--- запросом это сделать можно?

-~{}~ 25.05.05 19:37:

Нечто
--
Гляну... tnx
 

Flexx

Guest
Автор оригинала: Сенсей
Тогда как может быть что когда я беру текст с базы скриптом - на сайте русский текст виден?
Знаешь что такое ASCII-таблица, и где в ней начинаются русские буквы? Если нет, то долго объяснять :)

Если кратко, то когда ты добавляешь записи, они добавляются дословно. Когда делаешь выборку - они достаются такими же, какими ты их положил (в твоём случае).

А phpmyadmin вытаскивает данные из таблиц исходя из установленной для них кодировки (и это правильно).

запросом это сделать можно?
Конечно.

ALTER TABLE `table_name` DEFAULT CHARACTER SET cp1251 COLLATE cp1251_general_ci

А еще это умеет делать сам phpmyadmin
 

kruglov

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

Flexx

Guest
Автор оригинала: kruglov
только, на всякий случай, без бэкапа кодировку не меняйте.
Изменение кодировки в настройке таблицы не повлияет на данные.
 

kruglov

Новичок
я тож так думал, пока текст, состоящий из вопросиков, не получил.
 

Flexx

Guest
Автор оригинала: kruglov
я тож так думал, пока текст, состоящий из вопросиков, не получил.
Я не думаю, я проверяю.

P.S.: И ващще, вопросы связанные с проблемой кодировки MySQL, уже достали.
 
Сверху