|
|
|
| Здравствуйте Уважаемое сообщество.
Мне в файле дампа БД нужно сменить кодировку на cp-1251
(в файле 92 таблицы в конце кода дампа таблицы написано примерно TYPE=MyISAM AUTO_INCREMENT=1;)
Чтоб изменить кодировку можно прописать MyISAM DEFAULT CHARSET=cp1251
Но вот только в 92 строках это делать очень долго.
файл дампа прикрепил.
Что можно ещё сделать по изменению кодировки, | |
|
|
|
|
|
|
|
для: pautina
(07.09.2010 в 23:09)
| | Вам не требуется то, что Вы описали.
Эквивалентный эффект будет обеспечен путем переключения кодировки БД, в которую выполняется импорт, непосредственно перед импортом.
http://dev.mysql.com/doc/refman/5.1/en/charset-database.html:
The database character set and collation are used as default values for table definitions if the table character set and collation are not specified in CREATE TABLE statements. The database character set also is used by LOAD DATA INFILE. The character set and collation have no other purposes. | |
|
|
|
|
 418.8 Кб |
|
|
для: Trianon
(08.09.2010 в 00:25)
| | Посмотрите файл дампа.
Имея его как мне изменить кодировку во всех таблицах. в настройках сервера на платном хостинге нет возможности изменить кодировку на cp 1251 | |
|
|
|
|
|
|
|
для: pautina
(08.09.2010 в 08:43)
| | Вам не требуется трогать настройки сервера.
Полагаю, в Вашем случае, это к тому же просто опасно
БД это не сервер, а База Данных. Конкретная база данных.
И это счастье, что конкретная кодировка таблиц не вписана в дамп.
Такой дамп без вопросов можно проимпортировать и в бд 1251, и в бд utf8, и в какую угодно бд, лишь бы кириллица в кодировке была поддержана. | |
|
|
|
|
|
|
|
для: Trianon
(08.09.2010 в 09:56)
| | Можете описать как бы Вы решили этот вопрос.
Я делал так создавал новую БД, с кодировкой 1251, делал импорт указанного файла дампа БД с кодировкой 1251, после импорта смотрел содержимое БД, а кодировка таблиц не изменилась ,а осталась utf-8 | |
|
|
|
|
|
|
|
для: pautina
(08.09.2010 в 10:04)
| | Операция контекстной замены есть в любом тестовом редакторе. Найти... Заменить на... Заменить везде... вуаля.
Поэтому проблема, даже в Вашем личном понимании, высосана из пальца.
Вот только вполне приличный дамп Вы этим лишь покорежите. Несильно, но покорежите.
Хотите - корежьте, дело Ваше.
>Я делал так создавал новую БД, с кодировкой 1251, делал импорт указанного файла дампа БД с кодировкой 1251, после импорта смотрел содержимое БД, а кодировка таблиц не изменилась ,а осталась utf-8
Я бы сделал именно так, как Вы описали.
Возможно, у Вас применяется какой-то кривой инструмент для импорта (делает ALTER DATABASE CHARSER cp1251 вместо SET CHARSET или SET NAMES ), либо Вы сами неточно интерпретируете полученные результаты. Либо таки не изменили в БД кодировку перед импортом (создали БД не указав кодировку явным образом).
SHOW CREATE TABLE ИмяТаблицы что показывает? | |
|
|
|
|
|
|
|
для: Trianon
(08.09.2010 в 10:15)
| | В имени любой таблицы показывается кодировка utf8_general_ci | |
|
|
|
|
|
|
|
для: pautina
(08.09.2010 в 10:26)
| | SHOW CREATE DATABASE ИмяБД
что показывает? | |
|
|
|
|
|
|
|
для: Trianon
(08.09.2010 в 10:34)
| | Пишет вот что.
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'cp1251' at line 1 | |
|
|
|
|
|
|
|
для: pautina
(08.09.2010 в 10:40)
| | >Пишет вот что.
>#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'cp1251' at line 1
я не писал в запросе никаких cp1251 | |
|
|
|
|
|
|
|
для: Trianon
(08.09.2010 в 10:50)
| | Ну да у меня имя БД такое. (bd50 cp1251) | |
|
|
|
|
|
|
|
для: pautina
(08.09.2010 в 10:54)
| | с пробелом внутри чтоли?
тогда имя в `обратные косые кавычки` брать следует.
хотя за пробелы в именах нужно расстреливать.
пластилиновыми пулями. | |
|
|
|
|
|
|
|
для: Trianon
(08.09.2010 в 11:09)
| | Сделал без пробелов не помогло, что ещё можно сделать. | |
|
|
|
|
|
|
|
для: pautina
(08.09.2010 в 12:51)
| | Я задал четкий вопрос.
Что выдает запрос
SHOW CREATE DATABASE ИмяБазыДанных
|
?
Вы отвечаете "не помогло".
Что тут еще можно сказать? | |
|
|
|
|
|
|
|
для: Trianon
(08.09.2010 в 13:52)
| | На чёткий вопрос был дан чёткий ответ, ещё до этого
>Пишет вот что.
>#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'cp1251' at line 1 | |
|
|
|
|
|
|
|
для: pautina
(08.09.2010 в 13:54)
| | Тогда вводить следовало следующее:
SHOW CREATE DATABASE `bd50 cp1251`
|
если у Вас и правда имя bd50 cp1251 ...
И на такой запрос такой ответ получен быть не мог.
Сейчас я буду занят. Может кто другой поможет. | |
|
|
|
|
|
|
|
для: Trianon
(08.09.2010 в 14:13)
| | Благодарю всех кто откликнулся.
Проблема решалась на сервере хостера, обновление сервера mysql до 5 версии решило все вопросы. | |
|
|
|