Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИПК_Занятия_ОПБД / Lectures_14-15.pptx
Скачиваний:
20
Добавлен:
15.04.2015
Размер:
3.86 Mб
Скачать

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

21

Еще один тип ХП - расширенные ХП

(extended stored procedures).

Они пишутся на языке

программирования (например, С).

Эти ХП оформляются как функции в

составе библиотек динамических

связей - DLL (Dynamic Link Library),

что повышает скорость их

выполнения. Имена таких процедур

начинаются с символов хр_.

22

ХП можно создавать:

как последовательности операторов T-SQL с использованием оператора CREATE PROCEDURE;

с помощью программы SQL Server Management Studio.

Имя ХП - до 128 символов.

23

В ХП могут использоваться все операторы SQL, кроме операторов

CREATE …

По умолчанию разрешение на выполнение ХП получает владелец БД, который может предоставлять эти права другим пользователям.

24

Синтаксис оператора создания ХП

Параметры оператора создания ХП

Используя префиксы sp_, #, ##,

ХП задается системной или временной.

Не допускается указывать:

имя владельца, которому будет принадлежать ХП,

имя БД, где размещается ХП.

Поэтому для размещения создаваемой ХП

в конкретной БД выполняется команда CREATE PROCEDURE в контексте этой

БД.

26

 

При обращении из тела ХП к объектам той же БД можно использовать укороченные имена, т. е. без указания имени БД.

Когда же требуется обратиться к объектам, расположенным в других БД, указание имени БД обязательно.

27

Номер в имени (номер версии или версия) – номер ХП, однозначно определяющий ее в группе процедур.

Для удобства управления процедурами логически однотипные ХП можно группировать, присваивая

им одинаковые имена, но разные

идентификационные номера.

28

Использование в имени процедуры

параметра [;версия] (задается целым числом) позволяет получить группу одноименных процедур с одинаковыми именами и разными версиями,

например: ргос;1, ргос;2, ргос;3

Это удобно для управления группами однотипных процедур, например, всю такую группу процедур можно удалить одной командой:

DROP PROCEDURE proc29

Для передачи входных и выходных

данных в создаваемой ХП могут использоваться параметры, имена которых, как и имена локальных переменных, должны начинаться с символа @.

В одной ХП можно задать много параметров, разделенных запятыми. В теле ХП не должны применяться локальные переменные, чьи имена

совпадают с именами параметров ХП.

30

Соседние файлы в папке ИПК_Занятия_ОПБД