Auto Increment with MySQL in PHPMyAdminОпубликовано: 12.11.2016 Не так давно в собственной практике при работе с СУБД MySQL повстречал не приятную обидную ошибку вида incorrect string value:'\x81\xAE\xA3\xA4\xA0\xAD'for column 'name' at row 1. При всем этом значения шестнадцатеричной строчки и наименования столбца естественно могут быть другими, но сущность при всем этом не изменяется. Auto Increment with MySQL in PHPMyAdmin Итак вот понятное дело, что неувязка в шифровках. Т.е. что-то где то не так настроено, но вот что конкретно? Пришлось издержать на это много времени чтобы разобраться. Поискав в вебе решение вызнал, что с схожей ситуацией сталкиваются достаточно многие. Весело, что всюду люди дают совсем различные, иногда совершенно не мыслимые, советы. На самом же деле всё просто. Оказалось, что необходимо просто после соединения с СУБД MySQL очевидно объявить ей шифровку соединения (общения, обмена данными). Делается это с помощью команды SET NAMES, которая в раз исправит вашу делему. Итак вот соединяемся и дальше сразу пишем данную команду, и естественно не забываем дописать подходящую шифровку, к примеру для PHP это смотрится приблизительно так: C# Tutorial 23: How to use DateTimePicker and save date in Database Ну либо так, что более приемлемо: SET NAMES utf8. Эта команда регулирует шифровку в какой будут обмениваться клиент и сервер. Т.е. у вас на сервере данные могут лежать в какой угодно шифровке, к примеру, UTF-8, присоединяясь к серверу, вы с помощью SET NAMES гласите, желаю обмениваться данными в шифровке, к примеру, Windows-1251. После чего сервер, при получении от вас данных автоматом перекодирует их из Windows-1251 в UTF-8, а при отправке вам данных напротив из UTF-8 в Windows-1251. Только необходимо всякий раз докладывать ему, в какой шифровке вы желаете разговаривать, по другому он будет работать в latin1 (MySQL родом из Швеции). В вебе же по данной теме, что только не рекомендуют, от прибавления дополнительных директив задания шифровок в конфигурационный файл my.ini и прямо до смены шифровки всей базы данных и всех таблиц с utf8 на модернизированную utf8mb4. В общем как обычно, кто во, что горазд. Думаю на этом вопрос исчерпан, спасибо за внимание. |
Добро пожаловать ,
Гость
!
|