Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Справочник по SQL http.doc
Скачиваний:
0
Добавлен:
04.12.2019
Размер:
671.74 Кб
Скачать

Индексы

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

Представления

Конечной целью создания БД являются запросы данных от пользователей. Если запрос используется клиентскими программами, например, для генерации отчета или очень сложен (код запроса занимает страницы), то имеет смысл сохранить его. Для хранения запросов используются специальные объекты - представления или на сленге вьюхи (от view), содержащие в себе код запроса данных на языке SQL. Представления также называют виртуальными таблицами, которые отличаются от обычных таблиц тем, что доступны только для чтения. В результате код новых запросов с подзапросами становится более понятным. А также упрощается работа создателей отчетов, которые могут даже не знать структуру БД, ведь им достаточно знать имя представления.

Процедуры и функции

Серьезные СУБД поддерживают в различной степени динамический SQL, с которым связаны дополнительные типы объектов. В первую очередь это хранимые функции и процедуры. Их аргументы могут быть как входными, так и выходными, т.е. в них можно сохранить результат работы процедуры. В Oracle множество функций, процедур, различные пользовательские типы и переменные можно объединить в специальный объект - пакет (package), выполняющий роль модуля или библиотеки обычных языков программирования. Например, пакет DBMS_OUTPUT служит для вывода данных из хранимых процедур. Помимо обычных функций, СУБД поддерживают агрегатные функции, работающие сразу со множеством записей. К таким функциям относятся подсчет записей в выборке, поиск записи с минимальным или максимальным значением в указанном поле.

Триггеры

Для обработки событий вставки, изменения и удаления записей в таблице могут быть назначены триггеры - процедурные объекты, автоматически выполняющиеся при наступлении указанного события.

схема

Объект схема (schema) позволяет логически сгруппировать множество других объектов БД для определенной цели. Например, одна схема может служить для управления книжным фондом библиотеки, а другая ее бухгалтерией. Таким образом, несколько клиентских программ могут работать с одной СУБД не мешая друг другу.

Пользователи и сессии

Информация о пользователях также хранится в БД. Каждый пользователь характеризуется именем, паролем для входа, правами доступа к объектам БД и числом одновременных подключений (сессий). Для облегчения права доступа могут быть сгруппированы в роли. Ограничение в правах разумно не только с точки зрения безопасности целостности БД (можно случайно уничтожить таблицу с данными) и сокрытия данных (например, адреса клиентов). Клиентские программы могут анализировать доступные права и выстраивать соответствующий пользовательский интерфейс, например, убрать лишние пункты меню.

В каждой СУБД свой перечень используемых типов объектов. Выше обозначены лишь более-менее стандартные объекты.