Недостатки представлений

Наряду с перечисленными выше преимуществами, представления обладают и двумя существенными недостатками.

Производительность. Представление создает лишь видимость существования соответствующей таблицы, и СУБД приходится преобразовывать запрос к представлению в запрос к исходным таблицам. Если представление отображает многотабличный запрос, то простой запрос к представлению становится сложным объединением и на его выполнение может потребоваться много времени.

Ограничения на обновление. Когда пользователь пытается обновить строки представления, СУБД должна установить их соответствие строкам исходных таблиц, а также обновить последние. Это возможно только для простых представлений (созданных на основе одной таблицы); сложные представления обновлять нельзя, они доступны только для выборки.

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

Создание индексов

Общий формат оператора CREATE INDEX

Индекс может быть создан оператором:

CREATE [UNIQUE] [ASC[ENDING]|DESC[ENDING]]

INDEX ИмяИндекса ON ИмяТаблицы (столбец1 [, столбец2...]);

– UNIQUE − требует создания уникального индекса;

– ASC[ENDING] − указывает на необходимость сортировки значений индексных полей по возрастанию (по умолчанию);

– DESC[ENDING] − указывает на необходимость сортировки значений индексных полей по убыванию;

– ИмяИндекса − имя создаваемого индекса;

– ИмяТаблицы − имя таблицы, для которой создается индекс;

– столбецN − имена столбцов, по которым создается индекс.

Ниже дан пример инструкции CREATE INDEX, которая создает индекс для таблицы ZAKAZY на основе столбцов MFR и PRODUCT и содержит требование уникальности для комбинации этих столбцов:

CREATE UNIQUE INDEX ORD_PROD_IDX

ON ZAKAZY (MFR, PRODUCT);


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: