Задать вопрос

Sсhemaless для MYSQL, как?

После знакомства с mongoDB появилось желание избавиться в своем ORM от инсталятора создающего структуру БД.
Идея состоит в том, чтобы отлавливать когда драйвер ругается на то, что нет у нас таблицы, и создавать таблицу, если не хватает колонки — создавать колонку.
Проблема типизации решена — при чтении в любом случае у нас в поле NULL будет, раз еще не было записи, а при записи у нас есть тип данных (не тип переменной, а именно тип поля включая set и enum, ибо внутри модуля структура данных типизирована.

Итак вопрос — как вы считаете насколько это криво?
Второй вопрос — подводные камни есть?
Как показывает практика многие проходили через идею выводить страницы подменив вывод 404-ошибки.
Недостаток очевиден — нет индексации ибо для поисковика это 404, и загаженный лог ошибок.
Нет ли здесь подобных подводных камней?

ПЫСЫ: Задача рассматривается в контексте php поскольку если уж я ставлю к примеру Питон, то легко поставлю рядом noSQL какой-то с shemaless и не буду изобретать велосипед. Уточнение ибо может есть какие-то нюансы в реализации.

UPD: Интересует в первую очередь ваше мнение о подходе а не готовые решения. Т.е. ОК/плохо, или там «лучше сделай вот так-вот», готовые решения конечно интересны, но разбирать чужой большой движок чтобы понять как он устроен это не так просто… Спасибо :)
  • Вопрос задан
  • 3697 просмотров
Подписаться 4 Оценить Комментировать
Ответ пользователя Сергей Протько К ответам на вопрос (6)
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Это очень и очень криво. Лучше уж EAV применить и уже отсюда плясать.

А вообще нету никаких проблем использовать MongoDB в качестве дополнения к MySQL.
Ответ написан