Большинство индексных файлов построены по принципу В-дерева. При отсутствии индексы СУБД выполняет последовательный поиск в таблице.
Примечание. Microsoft SQL считает значения null как повторяющиеся в случае применения уникального индекса.
Удаление индекса выполняется командой DROP INDEX. Ее синтаксис различается. В частности, требуется либо не требуется указывать название таблицы.
DROP INDEX название_индекса ON таблица.
(В Microsoft SQL Server – DROP INDEX таблица.название_индекса)
Представление (view) – экранная форма для отображения выборки. Его нередко называют виртуальной таблицей. СУБД хранит представление в виде команды SELECT, а не результатов выборки. Этим исключается дублирование данных.
Представление можно использовать в запросах, так же как и обычную таблицу (или запрос).
Представления применяются для отображение данных пользователям приложений БД. Они:
- упрощают доступ к данным, поскольку пользователям не надо понимать связь между различными таблицами;
- автоматически обновляют данные при изменениях в таблицах;
- обеспечивают безопасность, т.к. отображают только часть данных, скрывают другие;
- виртуальное отображение обеспечивает и логическую независимость данных, поскольку отображается фрагмент данных значимый с точки зрения логики конкретного приложения.
Виртуализация позволяет пользователям абстрагироваться от изменения структуры БД .
По умолчанию столбцы представления получают названия исходных (базовых, низших) таблиц. Предложение AS позволяет назначить столбцу синоним названия. Столбец получает то же тип данных, что и столбец исходной таблицы. Столбцы представления могут быть вычислимыми. Представление может отображать данные в другом формате, чем исходная таблица. Некоторые СУБД запрещают создавать представления для временных таблиц.
Представление создается практически любой командой SELECT, хотя применение конструкции ORDER BY обычно запрещено. Запрещается применение индексов и ограничений.
СУБД выполняет представление каждый раз, когда на него ссылаются. Поэтому сложные представления могут существенно влиять на производительность.
Представление создается командой
CREATE VIEW имя_представления [(столбцы_представления)] AS оператор_SELECT
столбцы_представления – названия столбцов в создаваемом представлении, количество имен должно совпадать с количеством столбцов, выбираемых в запросе. Если список названий столбцов не задан, используются имена столбцов из оператора SELECT. Представление должно содержать уникальные названия столбцов. Названия столбцам можно задать и в команде SELECT.
Пример. Создать представление, скрывающее персональную информацию об авторах. (пример CR_View_Authors)
CREATE VIEW au_names
AS SELECT au_id, au_fname, au_lname
FROM authors;
В результате выполнения команды (типа конструктор) создается запрос на выборку с именем au_names.
Д.з. Создать представление, которое отображает список всех авторов, проживающих в городах, где расположены издательства.
Пример. Создать представление, отображающая полученную прибыль, сгруппированную по типу книг для каждого издательства. (пример CR_Revenue)
CREATE VIEW revenues (Publisher, BookType, Revenue)
AS
SELECT pub_id, type, SUM(price * sales)
FROM title
GROUP BY pub_id, type;
Для представления можно выполнить действия аналогичные действиям с таблицей:
- выбрать данные;
- изменить представление:
- добавить строку;
- изменить строку;
- удалить строку.
Представление можно удалить командой DROP VIEW.
Транзакция – последовательность команд SQL, которые выполняются как единое целое. СУБД рассматривает транзакцию как неделимую группу и исполняет либо все ее команды, либо ни одной.
Границы транзакции должны быть четко обозначены. Транзакция начинается командой BEGIN NRANSACTION, завершается командами COMMIT либо ROLLBACK (отмена транзакции).
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.