Форум программистов, компьютерный форум, киберфорум
Наши страницы
MySQL
Войти
Регистрация
Восстановить пароль
 
Мизантроп_Лол
13 / 13 / 2
Регистрация: 26.02.2013
Сообщений: 285
Завершенные тесты: 1
1

UTF-8 в MySQL

02.05.2016, 17:24. Просмотров 182. Ответов 0
Метки нет (Все метки)

Здравствуйте.
Поставил себе MySQL. При настройке сервера указал кодировку utf-8, однако после выполнения такого скрипта:
Кликните здесь для просмотра всего текста
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
DROP TABLE IF EXISTS 
    Vendors;
    
CREATE TABLE Vendors
(
    No INTEGER(3),  
    Region VARCHAR(20),  
    Crops VARCHAR(12),  
    Farm VARCHAR(25), 
    Director VARCHAR(30) PRIMARY KEY,
    Contacts VARCHAR(15)
) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; 
 
INSERT INTO Vendors VALUES (1,'Кировоградская обл', 'Просо','Александрия','Прилуцкая М.В.', '80503695621');

делая
SQL
1
SELECT * FROM vendors;
получаю кракозябры вместо строк. Пробовал сначала вызывать cmd, там делать chcp 65001 (где-то нагуглил, что это страница с utf-8), после чего запускать MySQL Command Line Client и делать вышеперечисленные действия. Кракозябры поменялись, но все равно остаются кракозябрами.
SQL
1
SHOW VARIABLES LIKE 'character%'
выводит utf-8 везде, кроме файловой системы (там binary, но так вроде и должно быть).
Так же пробовал использовать MySQL C Connector. Та же фигня. Думал, что проблема в невосприимчивости консоли к такой кодировке. Сделал небольшую программку в CodeBlocks с wxWidgets с поддержкой Unicode (подключение, селект и вывод значений в грид) - те же самые кракозябры.
Надеюсь, кто-то сможет подсказать, что можно сделать с этой бедой.
Версия MySQL - 5.5.

Добавлено через 7 минут
Забыл добавить. Во многих аналогичных темах по php пишут делать что-то типа такого:
PHP
1
mysql_set_charset('utf8');
Я делаю вроде как аналогично в С++:
C++
1
2
mysql_set_character_set(&mysql, "utf8");
    mysql_query(&mysql, "SET NAMES utf8");
Добавлено через 1 минуту
Ах да. При попытке сделать запрос с созданием строки не из файла, а вручную (в консольку) - ругается на русские символы и выводит их в виде двухбайтных 16-ричных чисел, хотя при загрузке с файла все проходит отлично.

Добавлено через 1 час 3 минуты
Ну же. Вроде ж не сложный вопрос для тех, кто давно имеет дело с MySQL. Помогите же новичку =\.

Добавлено через 16 часов 51 минуту
Чисто случайно нашел проблему. Ради эксперимента делал запросы с разными кодировками и как оказалось, данные были в cp866, что как-то непонятно, ибо файл в котором хранились скрипты был перекодирован и с тех пор хранит данные в UTF-8 (судя по тому, что говорит Notepad++). Вопрос теперь в том, как эту проблему решить? Перед заносом данных из файла делал дроп таблицы и set names utf8.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2016, 17:24
Ответы с готовыми решениями:

utf-8
Люди ХЭЛП ... Немогу понять причину . В базе кодировка стоит utf-8 , русские буквы отображаются...

Ошбка Can't connect to local MySQL server through socket '/tmp/mysql.sock' (11)
Есть сервер с mysql - если клиенты присоединятся к серверу БД через TCP/IP, то всё отлично и сервер...

Cannot create windows service for mysql. Erro 0. И, Host 'localhost' is not allowed to connect to this mysql server
Здравствуйте! Переустановил Windows 7, Service Pack 1. Устанавливаю MySQL 5.5.60-winx64. Никогда...

MySQL. Windows 7. Пропадает служба MySQL при перезагрузке.
Вот собственно сабж. Подскажите как это поправить. Windows 7/Apache/PHP/ MySQL 5.5. Просмотрел...

Java.sql.SQLException: No suitable driver found for com.mysql.jdbc:mysql://localhost:3306/log
Пол дня просидел, и так, и сяк пробовал, никак. Eclipse EE public static void main(String args) {...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.05.2016, 17:24

Кодировка UTF-8 не функционирует
Доброго времени суток! Обращаюсь к вам за помощью, потому как я уже просто не знаю что еще можно...

Выбор кодировки для БД (utf-8)
Разрабатываю мультиязычный проект, на сколько я понял нужен utf-8. Какую имено выбрать в MySQL для...

Некорректно отображаются русские символы в UTF-8
Это не столько проблема, сколько вопрос из любопытства. У меня есть сайт на CMS Modx Revolution....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru