2010-09-17 2 views
0

Я создаю списки блоков, чтобы блокировать действия пользователя на основе IP-адреса, MAC-адреса, адреса электронной почты, имени (имя/фамилия), имен и имен торговых марок. Итак, каждая из них должна быть отдельной таблицей поиска или может быть одна таблица block_list со всеми этими параметрами? Каждый из них индивидуально независим от другого.Таблица списков блоков (IP, Mac, электронная почта, имя, имя пользователя)

Список будет использоваться в нескольких местах ->
пользователя Регистрация - счет подключений блока на основе IP, MAC, адрес электронной почты & любого запрещено/фамилия
Имени пользователя Создания первого - блок создания имени пользователя на основе ограниченных имен пользователей
Сведения о профиле - электронная почта блока профиля добавляется на основе запрещенных сообщений Публичные страницы - блокировать людей от имен страниц на основе ограниченного списка товарных знаков.

Кроме того, лучше ли хранить это в БД или текстовом файле? Кроме имен товарных знаков все остальное будет на английском языке. Для товарных знаков я могу использовать блокировку, специфичную для региона, поэтому вам нужна поддержка multi-lang.

ответ

0

Я сделал бы каждый свой стол.

Как бы их объединить, чтобы ваши запросы выполнялись быстрее? это не так.

Не похоже, что вы не будете знать, что у вас есть, если у вас есть проверка MAC-адреса в таблице MAC-адресов блока для него, это будет ваш первичный ключ, который будет определен точно для правильной длины и тип для MAC-адреса.

0

Что касается наличия 1 таблицы со всеми значениями в столбце и блоке - block_type. Вам понадобится таблица поиска для block_type, где 1 = IP. 2 = MAC, ... Это вы могли бы управлять этим только с двумя таблицами. Но я позволю кому-то более профессионально ответить на это, поскольку я новичок в базах данных.

0

Вы можете поместить все записи в одну таблицу. Проверьте подход Entity-Attribute-Value или используйте схематический хранилище NoSQL.

http://en.wikipedia.org/wiki/Entity-attribute-value_model

Если вы обработка «блокирования» в среднем уровне, вы можете просто сбросить списки, как сериализованные объекты (например, JSON) в таблицу.

Смежные вопросы