Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Поле mediumtext, при insert обрезает по определённому символу
|
|||
|---|---|---|---|
|
#18+
Приветствую. Столкнулся со странной проблемой. В поле таблицы пишутся сниппеты (в виде json), получаемые через яндекс.XML. Поле типа mediumtext, utf-8. В определённым момент пошли глюки. Стал разбираться, выяснилось что в одном случае данные в поле пишутся обрезанными: http://take.ms/zaZPV До вставки в базу вот так: http://take.ms/cTCrd Как видно из скринов, обрезка происходит на изображении машинки, которая, как я полагаю, является кодом utf символа. Но почему именно на ней? На последнем скрине видно, что в этой же строке вначале стоит галка, которая явно из той же оперы. Версия MySQL: 5.5.43-0. Может ли первый символ быть utf-8, а второй utf-16? Насколько я вижу, это именно так: http://take.ms/ZG5kJ . Из за этого ли возникает проблема? Решилось, кстати, изменением типа данный на mediumblob. Кому интересно взглянуть, залил json вот сюда . Искать по строке "характеристики, цены, отзывы, фото, наличие в магазинах". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2018, 21:45 |
|
||
|
Поле mediumtext, при insert обрезает по определённому символу
|
|||
|---|---|---|---|
|
#18+
Victor256В поле таблицы пишутся сниппеты (в виде json) ... Поле типа mediumtext, utf-8.А почему такое несоответствие? по-моему, куда как логичнее использовать поле типа JSON... Victor256Может ли первый символ быть utf-8, а второй utf-16? Насколько я вижу, это именно так: http://take.ms/ZG5kJ. Да ни хрена Вы ТАК не видите. Надо смотреть в БАЙТОВОМ представлении. Попробуйте сменить тип кодировки на UTF8MB4. Victor256Решилось, кстати, изменением типа данный на mediumblob.Ну ещё бы... бинарным-то данным вообще параллельно, есть там какая-то кодировка или нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2018, 07:50 |
|
||
|
Поле mediumtext, при insert обрезает по определённому символу
|
|||
|---|---|---|---|
|
#18+
AkinaА почему такое несоответствие? по-моему, куда как логичнее использовать поле типа JSON... оно в 5.7 появилось только AkinaДа ни хрена Вы ТАК не видите. Надо смотреть в БАЙТОВОМ представлении. Попробуйте сменить тип кодировки на UTF8MB4. http://take.ms/zVACZ таки 2 байта. Ну а насчёт обрезания строки, это так и должно работать? Мне чисто для общего развития. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2018, 13:24 |
|
||
|
Поле mediumtext, при insert обрезает по определённому символу
|
|||
|---|---|---|---|
|
#18+
Victor256насчёт обрезания строки, это так и должно работать? Мне чисто для общего развития.Когда данные интерпретируются как текст - в дело вступают всякие там кодировки и коллации, в которых сам чёрт ногу сломит... короче, понятия не имею. А блоб - ему пофиг, ему пришёл поток байтов, и он его хранит как есть, а кому надо, тот перекастует в текст или куда ещё... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2018, 13:30 |
|
||
|
|

start [/forum/topic.php?fid=47&tid=1829960]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
63ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 233ms |
| total: | 395ms |

| 0 / 0 |
