JSON mysql 5.7+ zeos (закрыто)

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

JSON mysql 5.7+ zeos (закрыто)

Сообщение Xenar » 30.06.2017 11:54:07

Всем доброго времени суток.
Решил опробовать включения JSON в MYSQL 5.7 под lazarus.
Соединение с базой идет через ZEOS.
При обращении к полю имеющий тип json получаю исключение Unknown MySQL data type!
zeos не знает данный тип?
Последний раз редактировалось Xenar 02.07.2017 11:37:38, всего редактировалось 1 раз.
Аватара пользователя
Xenar
постоялец
 
Сообщения: 158
Зарегистрирован: 08.06.2011 12:54:07

Re: JSON mysql 5.7+ zeos

Сообщение java73 » 30.06.2017 14:30:19

Zeos компоненты давно не обновлялись, нет наверно.
java73
постоялец
 
Сообщения: 257
Зарегистрирован: 21.11.2013 09:08:10

Re: JSON mysql 5.7+ zeos

Сообщение olegy123 » 30.06.2017 14:51:24

скорее json есть тип string, или его можно свести в этот тип. потом парсить как json. либо json сводить в таблицу.
просто движок дает индикатор а Zeos распознать не может.
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20

Re: JSON mysql 5.7+ zeos

Сообщение java73 » 30.06.2017 14:53:37

Ну да, как строку его можно легко обрабатывать встроенными модулями для работы с json
java73
постоялец
 
Сообщения: 257
Зарегистрирован: 21.11.2013 09:08:10

Re: JSON mysql 5.7+ zeos

Сообщение Xenar » 30.06.2017 15:43:30

Провел небольшой эксперимент. Собрал лазаря из транка, в нем в отличие от 1,6 версии появилась поддержка mysql 5.7. В этой ситуации таблица с json худо бедно проходит в обработке, но само поле с json результатом не выводит.
А с zeosом все так же печально.

to Java73: Это я знаю, собственно говоря до сего момента так и делал, но захотелось "страного" :D сократить код за счет поддержки json самого mysql, ... похоже пока облом.с выходит
Аватара пользователя
Xenar
постоялец
 
Сообщения: 158
Зарегистрирован: 08.06.2011 12:54:07

Re: JSON mysql 5.7+ zeos

Сообщение olegy123 » 30.06.2017 15:52:14

Xenar писал(а):В этой ситуации таблица с json худо бедно проходит в обработке, но само поле с json результатом не выводит.

Оно же упаковано.. может представлять как JsonObject так и JsonArray или вообще Pointer
В любом случае нужно распарсивать.. может в тип TVariant
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20

Re: JSON mysql 5.7+ zeos

Сообщение Xenar » 30.06.2017 15:53:34

вон оно как, я то думаю чего оно в как MEMO в гриде отображается...
хотя это как то нелогично, зачем оно вообще упаковывает если я делаю SELECT specs->"$.size.weight" FROM ....
никакой неоднозначности в выводе здесь нет.

ps и тогда если значение приходит "упакованным" каким образом выводить его сразу в гриде??? вопросы....

ps к ps Сколько раз самому себе было говорено.... читай документацию...... все же делается методом научного тыка.
CAST(specs->"$.size.weight" as UNSIGNED) и все выводится.

Причем и в zeos заработало, получается если результат запроса приходил как json тип то zeos его не распознает, но стоит его преобразовать... то милости просим.
PROFIT!!
Последний раз редактировалось Xenar 02.07.2017 11:38:05, всего редактировалось 1 раз.
Аватара пользователя
Xenar
постоялец
 
Сообщения: 158
Зарегистрирован: 08.06.2011 12:54:07

Re: JSON mysql 5.7+ zeos

Сообщение olegy123 » 01.07.2017 11:50:20

JSON - это не совсем стандарт. Отсюда у каждого движка может быть свой подход.
Подождем лет 5 может JSON станет промышленным стандартом наравне с XML.
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 32

Рейтинг@Mail.ru