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

Форум MySQL

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

 

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

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

тема: MySQL и Windows 10: проблемы с кодировкой
 
 автор: AidOnline01   (13.03.2016 в 13:10)   письмо автору
428.7 Кб
 
 

Вообщем такая вот ошибка, никак решить не могу(В фото)

  Ответить  
 
 автор: cheops   (13.03.2016 в 13:47)   письмо автору
 
   для: AidOnline01   (13.03.2016 в 13:10)
 

Это Windows? Какая версия? У вас в какой кодировке таблица в базе данных?
У старых версий Windows есть проблема, командная строка работает в кодировке cp866, можно переключиться в Windows-1251, при помощи команды chcp 1251, но вот с UTF-8 могут быть проблемы. Дело в том, что MySQL нужно сообщить, в какой кодировке вы собираетесь с ней общаться, если ничего не сообщать, она считает, что вы будете общаться в кодировке latin1.
Попробуйте выяснить текущую кодировку консоли при помощи команды chcp (если это действительно Windows), а потом задать её в консоли MySQL при помощи команды
SET NAMES cp1251;

Однако, для более точного ответа, нужно больше информации по всем имеющимся кодировкам - консоли, базы данных.

  Ответить  
 
 автор: AidOnline01   (13.03.2016 в 14:08)   письмо автору
 
   для: cheops   (13.03.2016 в 13:47)
 

Везде стоит utf8_unicode_ci, виндовс 10, а в консоле команда chcp показывает кодировку 866

  Ответить  
 
 автор: cheops   (13.03.2016 в 14:14)   письмо автору
 
   для: AidOnline01   (13.03.2016 в 14:08)
 

Попробуйте сразу после подключения к базе данных при помощи коносоли mysql, выполнить запрос
SET NAMES cp866;

Им вы сообщите, что у вас в консоли кодировка cp866 и MySQL будет автоматически преобразовывать все что выводите в UTF8 и осуществлять обратное преобразование для вывода в консоль.

  Ответить  
 
 автор: AidOnline01   (13.03.2016 в 15:26)   письмо автору
 
   для: cheops   (13.03.2016 в 14:14)
 

Прописал эту команду, к сожалению ничем не помогло все та же ошибка waning 1366 Incorrect string value: '\xAC\xA8\xE8\xA0' for column 'name' at row 1

  Ответить  
 
 автор: cheops   (13.03.2016 в 15:32)   письмо автору
 
   для: AidOnline01   (13.03.2016 в 15:26)
 

Старые значения, если они введены через консоль придется удалить - они уже не корректно сохранены. Лучше пробовать с чистой таблицы.

  Ответить  
 
 автор: AidOnline01   (13.03.2016 в 15:44)   письмо автору
 
   для: cheops   (13.03.2016 в 15:32)
 

Cоздал новую базу данных и в ней соответствено новую таблицу. Ошибка осталась warning 1366 Incorrect string value: '\xA2\xAE\xAB' for 'name' at row 1

  Ответить  
 
 автор: cheops   (13.03.2016 в 15:47)   письмо автору
 
   для: AidOnline01   (13.03.2016 в 15:44)
 

Есть возможность вставить/посмотреть данные без консоли Windows? Через MySQL Workbeanch, phpMyAdmin, собственный PHP-скрипт?

  Ответить  
 
 автор: AidOnline01   (13.03.2016 в 16:06)   письмо автору
359.5 Кб
 
   для: cheops   (13.03.2016 в 15:47)
 

Менеджер mysql и phpmyadmin

  Ответить  
 
 автор: cheops   (13.03.2016 в 16:08)   письмо автору
 
   для: AidOnline01   (13.03.2016 в 16:06)
 

Проблемная строка в них нормально отображается?

  Ответить  
 
 автор: AidOnline01   (13.03.2016 в 16:13)   письмо автору
 
   для: cheops   (13.03.2016 в 16:08)
 

Нет, в них также пустая строка

  Ответить  
 
 автор: cheops   (13.03.2016 в 16:16)   письмо автору
 
   для: AidOnline01   (13.03.2016 в 16:13)
 

А если через них вставить строку - все отображается хорошо?

  Ответить  
 
 автор: AidOnline01   (13.03.2016 в 16:20)   письмо автору
 
   для: cheops   (13.03.2016 в 16:16)
 

В mysql manager все нормально, а в командной строке кракозябра.Кстати с помощью пхп скрипта my_sql_query все отлично заноситься в базу данных

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

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