ВУЗ:
Составители:
Рубрика:
использоваться практически все команды Transact-SQL, объявляться транзакции,
устанавливаться блокировки и вызываться другие хранимые процедуры. Для
выхода из хранимой процедуры можно использовать команду RETURN.
В момент создания хранимой процедуры система осуществляет только проверку
синтаксиса команд. Поэтому можно создавать хранимые процедуры в любом порядке,
не особенно заботясь о том, что некоторые упоминаемые в них объекты
(в том числе
и другие хранимые процедуры) пока еще не существуют. Проверка правильности
ссылок производится только в процессе компиляции хранимой процедуры, которая
выполняется непосредственно перед ее выполнением.
При вызове одной хранимой процедуры из тела другой образуются так
называемые вложенные процедуры (nested procedure). При работе с такими
процедурами следует учитывать ограничение SQL Server 2000 на количество
уровней
вложенности — 32. Для определения текущего уровня вложенности можно
воспользоваться переменной @@NESTLEVEL.
Существует два способа выполнения хранимой процедуры:
• указание только имени процедуры;
• использование команды EXECUTE.
В первом варианте вызов хранимой процедуры должен быть единственной
командой передаваемого на исполнение пакета. Когда вызов хранимой процедуры
не является единственной командой в пакете, то присутствие команды
EXECUTE
обязательно. Более того, использование этой команды требуется при вызове
процедуры из тела другой процедуры или триггера. Синтаксис команды EXECUTE
следующий:
[ [ EXEC [ UTE ] ]
{
[@return_status = ]
{ procedure_name [;number] | @procedure_name_var
}
[ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] }]
[,…n]
[ WITH RECOMPILE ]
использоваться практически все команды Transact-SQL, объявляться транзакции,
устанавливаться блокировки и вызываться другие хранимые процедуры. Для
выхода из хранимой процедуры можно использовать команду RETURN.
В момент создания хранимой процедуры система осуществляет только проверку
синтаксиса команд. Поэтому можно создавать хранимые процедуры в любом порядке,
не особенно заботясь о том, что некоторые упоминаемые в них объекты (в том числе
и другие хранимые процедуры) пока еще не существуют. Проверка правильности
ссылок производится только в процессе компиляции хранимой процедуры, которая
выполняется непосредственно перед ее выполнением.
При вызове одной хранимой процедуры из тела другой образуются так
называемые вложенные процедуры (nested procedure). При работе с такими
процедурами следует учитывать ограничение SQL Server 2000 на количество уровней
вложенности — 32. Для определения текущего уровня вложенности можно
воспользоваться переменной @@NESTLEVEL.
Существует два способа выполнения хранимой процедуры:
• указание только имени процедуры;
• использование команды EXECUTE.
В первом варианте вызов хранимой процедуры должен быть единственной
командой передаваемого на исполнение пакета. Когда вызов хранимой процедуры
не является единственной командой в пакете, то присутствие команды EXECUTE
обязательно. Более того, использование этой команды требуется при вызове
процедуры из тела другой процедуры или триггера. Синтаксис команды EXECUTE
следующий:
[ [ EXEC [ UTE ] ]
{
[@return_status = ]
{ procedure_name [;number] | @procedure_name_var
}
[ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] }]
[,…n]
[ WITH RECOMPILE ]
Страницы
- « первая
- ‹ предыдущая
- …
- 79
- 80
- 81
- 82
- 83
- …
- следующая ›
- последняя »
