Phpmyadmin как поменять кодировку базы
Перейти к содержимому

Phpmyadmin как поменять кодировку базы

  • автор:

Как поменять кодировку таблицы в phpMyAdmin?

Развернул вордпресс на локалхосте, начал разработку и сейчас столкнулся с проблемой что названия городов сохраняются как .

Полез в phpMyAdmin а там:

9b5fae5c3fc3054a5d0d620c38b9e87b.png?136

Может ли это быть корнем проблемы и если да, то как можно изменить latin_swedish на utf?

  • Вопрос задан более трёх лет назад
  • 27230 просмотров

Комментировать
Решения вопроса 1

В редактировании поля:

+ в настройках самой таблицы:

Ответ написан более трёх лет назад
Нравится 10 3 комментария
The Whiz @modernstyle Автор вопроса
Большое спасибо за помощь!

У базы поменял вручную кодировку, а как у всех таблиц этой базы поменять кодировку, не залезая в каждую таблицу? Пробовал использовать вот этот запрос, но не получилось:

SELECT CONCAT(‘ALTER TABLE `’, t.`TABLE_SCHEMA`, ‘`.`’, t.`TABLE_NAME`, ‘` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;’) as sqlcode
FROM `information_schema`.`TABLES` t
WHERE 1
AND t.`TABLE_SCHEMA` = ‘db_name’
ORDER BY 1

делаю в phpmyadmin
Ответы на вопрос 0
Ваш ответ на вопрос

Войдите, чтобы написать ответ

php

  • PHP
  • +2 ещё

Какие простые, «бытовые» задачи подходят для изучения машинного обучения?

  • 1 подписчик
  • 28 минут назад
  • 17 просмотров

Кодировка данных в phpmyadmin

Создал БД в phpmyadmin, через скрипт туда записываю данные, однако там русские слова отображаются неправильно. Какая кодировка должна по умолчанию быть в скрипте и в майадмине? Где и как проще сменить кодировку? Предпочел бы сменить в майадмине, но сойдет и изменение в скрипте на ту, что стоит в майадмине по умолчанию.

Отслеживать
51.4k 87 87 золотых знаков 267 267 серебряных знаков 505 505 бронзовых знаков
задан 20 авг 2011 в 15:20
91 2 2 золотых знака 3 3 серебряных знака 16 16 бронзовых знаков

Не могу пока решить проблему. Сначала надо в базу заносить данные, потом смотреть их через майадмин. При этом запрос имеет вид INSERT into users values («Текст»), кодировка функцией mb_detect_encoding определяется как UTF-8. В базе меняю кодировку (сравнение у них это называется) на UTF8_unicode_li для базы, таблицы и колонки, но данные все равно отображаются не правильно. Что еще можно попробовать?

20 авг 2011 в 16:40

а на выводе у вас тоже UTF-8 или выводите с другой кодировкой? Попробуйте кодировку сайта поменять на UTF-8 или выводимые значения конвертировать на кодировку вашего сайта.

21 авг 2011 в 2:47
В самом админе выводится неправильно или на сайте при запросе?
21 авг 2011 в 16:11

Вот именно в админе неправильно. Кстати, кодировка в php изначально все-таки ср1251, как выяснилось (функция mb_detect_encoding оказалась не права). Поэтому изменял все в базе именно на нее, но в админе все равно некорректно отображается.

22 авг 2011 в 9:37

4 ответа 4

Сортировка: Сброс на вариант по умолчанию

в пхп это: в самом начале скрипта — mysql_query(«SET NAMES ‘ваша кодировка в бд'»);

в мускуле — заходите в параметры бд и там будет опция смены кодировки.

Отслеживать
ответ дан 20 авг 2011 в 15:48
1,274 9 9 серебряных знаков 24 24 бронзовых знака
и когда база разрастётся — наслаждайтесь её тормозами, ага!
20 авг 2011 в 21:49

если есть доступ к файлу настроек MySQL сервера my.ini, то всё просто:

[client] # кодировка в которой сервер "работает" с клиентом (с Вашим скриптом в частности) default-character-set=utf8 [mysql] # кодировка в которой сервер "работает" с консолью (win+r -> cmd -> . ) В винде это cp866 default-character-set=cp866 [mysqld] # кодкировка, в которой сервер хранит информацию character-set-server=utf8 

Если все файлы скриптов и всё-всё-всё будет сохранено в utf8, то будет Вам счастье. Надеюсь помог.

П.С. Просто чтобы Вы знали говорю: то, что в майАдмине названо сравнением не связано с тем, в какой кодировке сервер БД будет возвращать информацию. Это всего лишь тип способа сравнения строк. например, если задано сравнение utf8_general_ci, то MySQL будет думать что строки «mysql» и «MySQL» равны. Если же установлено сравнение к примеру utf8_bin, то эти же строки сервером будут расценены как разные.

Как изменить кодировку сравнения баз данных?

Форум PHP-MyAdmin.RU → Работа с phpMyAdmin → Как изменить кодировку сравнения баз данных?

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Сообщения 2

1 Тема от Rabotyaga 2020-03-16 23:41:55 (изменено: Rabotyaga, 2020-03-16 23:55:45)

Тема: Как изменить кодировку сравнения баз данных?

https://i.imgur.com/OuS3vUq.png
Очень нужно это пофиксить, возможно ли?
Поставить кодировку одинаковую с остальными бд
https://i.imgur.com/uvVBLX8.png
И сделать одинаковую кодировку у некоторых таблиц здесь, через запросы не помогает. (database и server)
Доступа к mysql серверу у меня нет прямого, все через хостинг.

2 Ответ от Hanut 2020-03-17 22:26:05

Re: Как изменить кодировку сравнения баз данных?

Выбираете БД в phpMyAdmin, переходите на вкладку «Операции» и ставите сравнение внизу. Эта настройка влияет только на кодировку таблиц создаваемых без ее указания.

Но на самом деле, не важно какие кодировки указаны в настройках, если они правильно передаются при подключении к БД в скрипте. Обратите внимание именно на настройку скрипта, где обязательно должно быть что-то вроде запроса SET NAMES ‘utf8’;

Перед изменением кодировки таблицы сохраните исходные данные. Такое действие может погубить кириллицу.

Сообщения 2

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Форум PHP-MyAdmin.RU → Работа с phpMyAdmin → Как изменить кодировку сравнения баз данных?

Форум работает на PunBB , при поддержке Informer Technologies, Inc

Currently installed 7 official extensions . Copyright © 2003–2009 PunBB.

Изменение кодировки базы данных по умолчанию

Для изменения кодировки базы по умолчанию, например, на UTF-8, зайдите в интерфейс PHPMyAdmin.

  1. В левой колонке выберите нужную базу данных.
  2. Перейдите на вкладку Операции.
  3. В блоке Сравнение выберите utf8_general_ci.
  4. Нажмите кнопку Вперед.

Рекомендуется выбирать кодировку в соответствии с требованиями CMS или рекомендациями разработчика.

utf8_general_ci или utf8_unicode_ci — подходит для большинства CMS.
utf8mb4_unicode_ci или utf8mb4_unicode_520_ci — подходит для новых установок CMS на MySQL 5.6.
utf8mb4_0900_ai_ci — подходит для новых установок CMS на MySQL 8.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *