Является ли SQL рассматривает правильное решение - PullRequest
0 голосов
/ 19 октября 2019

У меня есть таблица с именем «Клиенты», в которой есть вся информация о пользователях разных типов (пользователь, драйверы, администраторы), и я не могу сейчас разделить эту таблицу, потому что она работает на производстве, и сейчас не время для этогоэто.

так что если я сделаю 3 просмотра: у первого есть только пользовательские типы, у второго - драйверы, а у третьего - администраторы.

Моя цель - использовать 3 модели вместо одной в проекте I 'Я работаю над тем, это хорошее решение и сколько это стоит на производительность?

Ответы [ 2 ]

1 голос
/ 19 октября 2019
  1. Насколько велик ваш стол «Клиенты»? Как следует из названия, оно не звучит как тяжелое.
  2. Как часто будут запрашиваться эти представления?
  3. Есть ли у вас какие-либо индексы или ограничения pk для атрибута, который вы собираетесь использовать? использовать в предложении where для представлений?

Я не могу сейчас разделить эту таблицу, потому что она работает на производстве, и сейчас не время для этого.

Из того, что вы сказали, это звучит как временное решение, так что оно, вероятно, хорошее. Позже вы можете заменить представления тремя таблицами, и это не повлияет на интерфейс.

0 голосов
/ 20 октября 2019

Я полагаю, что нецелесообразно давать логины конечным пользователям напрямую в базу данных. Вместо этого все запросы должны проходить через уровень доступа к базе данных (API), в который должны войти пользователи. Этот слой может обеспечить необходимую фильтрацию без (возможно) какого-либо влияния на пользователя. Слой, при построении необходимого SELECT, прикрепит, например, AND type = 'admin' для достижения цели.

Для производительности вам также может понадобиться type в начале некоторыхINDEXes.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...