Какое решение для динамических колонок для рекламы на веб-странице? - PullRequest
1 голос
/ 22 октября 2010

Я занимаюсь разработкой сайта, на котором будут классифицироваться рекламные объявления. В каждой категории будут возможны разные поля ввода (например: для машины будет размер двигателя, для кошки будет гонка). Поэтому я думаю, как создать базу данных для управления этим (я буду использовать базу данных MYSQL). Один способ, который вы можете видеть на прикрепленной картинке, я знаю, что это также решение для создания таблицы для каждого типа данных значений, но мне интересно, что это замедлит работу сайта. Это решение, которое показано на рисунке, будет генерировать пустые поля в таблице sp_advertising_value, что также не очень хорошо.

Какое, на ваш взгляд, лучшее решение? Может быть, есть что-то еще? постскриптум Вот ссылка на база данных рынка .

1 Ответ

1 голос
/ 23 октября 2010

Вы можете сохранить его как пары имя / значение (более или менее такие же, как описано на изображении, которое вы прикрепили).

Простая схема - это таблица с двумя столбцами name и value. Вместо того, чтобы иметь столбец для каждого типа данных, такого как value_int, value_string и т. Д., Есть одно значение столбца, типом данных которого может быть varchar (или Text, как вам кажется). Вы можете выполнять все преобразования данных в коде приложения в соответствии с вашими потребностями.

Здесь вы также можете выполнить некоторую нормализацию, например, вместо сохранения имени, вы можете создать отдельную таблицу поиска с именами параметров, имеющих идентификатор, имя и другую связанную информацию, и иметь параметр_id в таблице, где хранятся значения параметров.

...