Что касается производительности & «Правильный способ делать вещи» и пытаться выяснить, какой способ лучше хранить данные конфигурации в базе данных SQL. Предположим, у вас есть данные конфигурации веб-сайта для установки минимального и максимального возраста, с которым человек должен получить доступ к сайту.Сохранение нескольких значений в одном столбце против нескольких столбцов для нескольких значений
CREATE TABLE SiteConfig
(
featureName varchar(100),
value varchar(100),
)
Что лучше:
Чтобы сохранить все это в одной строке и обрабатывать его в PHP с взорваться() ;.
FeatureName: "ageRequirement"
значение: "13 | 60"
Чтобы сохранить его в виде отдельных строк для каждой функции и просто выбрать функцию, вам нужно, когда это необходимо.
FeatureName: "minAge"
значение: "13"
FeatureName: "MaxAge"
значение: "60"
В связи с количеством функций на веб-сайте, это разница в 60 ROWS данных против примерно 25.
Это была моя мысль. Пример, который я дал, прост, но есть много других функций, которые имели бы 2-5 разных переменных, если бы я пошел по этому маршруту. Я просто беспокоился о том, что нужно делать слишком много операторов SELECT для получения данных. – Vidarious
@Vidarious: вы можете иметь отдельные столбцы для разных параметров вместо строк, что облегчает их выборку. Кроме того, вы можете использовать разные типы данных для разных значений. Например, «int», по-видимому, лучше подходит для минимальных и максимальных значений возраста. – Guffa