- 0
Как правильно хранить настройки в базе?
Есть довольно сложная биллинговая система, используется MySQL в качестве БД. Вопрос: как лучше хранить в ней глобальные настройки? Глобальных настроек довольно много и они могут быть разнесены по разделам (настройки финансов, настройки языка и внешнего вида и т.п). Я думаю, что делать под каждый тип настроек отдельную таблицу не рационально. Поэтому, возможно, следует сделать отдельное поле, отвечающее за тип настроек, чтобы потом по нему выбирать необходимые параметры?
1 ответ:
-
- 0
Если все настройки читаются разом (например при логине юзера) - удобно запихнуть их все в ХML, и писать в базу сразу как XML-поле, а потом, при необходимости прочитать все разом и пропарсить на стороне сервера.
Но если нужно периодически то там настройку прочитать, то сям - парсить каждый раз XML средствами SQL (например для JOIN-ов) жутко геморрная штука, так что все же придется делать разные таблицы для разных разделов.