Есть данные, которые храню в БД в виде json.
С клиента приходят данные, на сервере конвертируются в json и кладутся в базу. $data = json_encode($data);
При этом, если внутри есть кириллические символы, то они преобразуются в юникод и занимают очень много места. Например, небольшой текст на полторы страницы не влез в MySQL в поле TEXT.
Если же вторым параметром в json_encode передать JSON_UNESCAPED_UNICODE, то кириллица не конвертируется.
Можно ли смело использовать JSON_UNESCAPED_UNICODE или есть смысл оставить как есть?
в первую очередь не нужно преобразовывать данные в JSON.
В базе данных нужно сделать таблицу с полями, которые есть в JSON, и при добавлении записи в БД записывать кажде поле в свою ячейку.
Именно так работают базы данных.
У меня в БД таблица музыкальных альбомов.
В таблице около 10 полей. Одно из полей tracks, в котором хранятся треки из этого альбома. Каждый трек в свою очередь имеет кучу полей, но это информация не используется ни в условиях, но еще где-то.
То есть варианта тут два: или поле с json или отдельную таблицу и связь один ко многим.
В добавок поля этих треков могут быть разные. В одном треке есть поля, которых нет в других. В общем с отдельном таблицей будет грязно.
С json проще.
Так что по существу вопроса?
99% нужна реляционная база, на 2 таблицы, что FanatPHP настоятельно рекомендует.
webdew если вы задали вопрос, новичковский вопрос, который вам нужно решить, и отвечающие указывают на правильное во всех отношениях решение, то наверно не стоит сразу переходить на грубость. Судя по совету, FanatPHP явно намного техничней, функциональней и корректней решит задачу из вашего вопроса, поэтому ответ в форме "Если тебе нужна, делай." неуместен. Нужно будет - сделает и оно будет работать.
Это замечательно, что она нужна. Только я не спрашивал об этом. Ответы не по существу или замечания принято писать в комментарии к вопросу.
FanatPHP явно намного техничней, функциональней и корректней решит задачу
Может и решит, но только не поможет с ответом на вопрос. Вы посмотрите на его ответы. Это же токсичный троль, который ходит самоутверждаться на тостер и говорить всем, какие они тупые, отправляя читать мануалы. Помню, его даже за это банили на тостере.