Просмотр определения хранимой процедуры
Определение хранимой процедуры можно просмотреть в Среда SQL Server Management Studio, воспользовавшись параметрами меню обозревателя объектов, а также с помощью редактора запросов и языка Transact-SQL. В данном разделе описывается процесс просмотра определения хранимой процедуры в обозревателе объектов и с помощью хранимой в системе процедуры, системной функции и в представлении каталога объектов в редакторе запросов.
Перед началом работы выполните следующие действия. Безопасность
Просмотр определения хранимой процедуры при помощи следующего. SQL Server Management Studio, Transact-SQL
Перед началом
Безопасность
Разрешения
[В начало]
Системная хранимая процедура: sp_helptext
Необходимо быть членом роли public. Определения системных объектов видимы для всех. Определения пользовательских объектов видимы владельцу объекта или участникам, которым предоставлены следующие разрешения: ALTER, CONTROL, TAKE OWNERSHIP или VIEW DEFINITION.Системная функция: OBJECT_DEFINITION
Определения системных объектов видимы для всех. Определения пользовательских объектов видимы владельцу объекта или участникам, которым предоставлены следующие разрешения: ALTER, CONTROL, TAKE OWNERSHIP или VIEW DEFINITION. Эти разрешения неявно предоставляются членам предопределенных ролей базы данных db_owner, db_ddladmin и db_securityadmin.Представление каталога объектов: sys.sql_modules
Видимость метаданных в представлениях каталогов ограничивается защищаемыми объектами, которыми пользователь владеет или на которые ему были предоставлены разрешения. Дополнительные сведения см. в разделе Настройка видимости метаданных.
Просмотр определения хранимой процедуры
Можно использовать одно из следующего.
SQL Server Management Studio
Transact-SQL
Использование среды SQL Server Management Studio
Просмотр определения процедуры средствами обозревателя объектов
В обозревателе объектов подключитесь к экземпляру компонента Компонент Database Engine и разверните его.
Последовательно разверните узел Базы данных, базу данных, которой принадлежит процедура, и узел Программирование.
Разверните пункт Хранимые процедуры, щелкните правой кнопкой процедуру, после чего щелкните пункт Создать скрипт для хранимой процедуры как, после чего щелкните один из следующих пунктов: Создать в, Изменить на или Удалить и создать в.
Выберите Создать окно редактора запросов. При этом отобразится определение процедуры.
[В начало]
Использование Transact-SQL
Просмотр определения процедуры в редакторе запросов
Системная хранимая процедура: sp_helptext
В обозревателе объектов установите соединение с экземпляром компонента Компонент Database Engine.
На панели инструментов нажмите кнопку Создать запрос.
В окне запроса введите следующую инструкцию, которая использует системную хранимую процедуру sp_helptext. Измените имя базы данных и имя хранимой процедуры для ссылки на нужную базу данных и хранимую процедуру.
USE AdventureWorks2012; GO EXEC sp_helptext N'AdventureWorks2012.dbo.uspLogError';
Системная функция: OBJECT_DEFINITION
В обозревателе объектов установите соединение с экземпляром компонента Компонент Database Engine.
На панели инструментов нажмите кнопку Создать запрос.
В окне запроса введите следующие инструкции, которые используют системную функцию OBJECT_DEFINITION. Измените имя базы данных и имя хранимой процедуры для ссылки на нужную базу данных и хранимую процедуру.
USE AdventureWorks2012; GO SELECT OBJECT_DEFINITION (OBJECT_ID(N'AdventureWorks2012.dbo.uspLogError'));
Представление каталога объектов: sys.sql_modules
В обозревателе объектов установите соединение с экземпляром компонента Компонент Database Engine.
На панели инструментов нажмите кнопку Создать запрос.
В окне запроса введите следующие инструкции, которые используют представление каталогов sys.sql_modules. Измените имя базы данных и имя хранимой процедуры для ссылки на нужную базу данных и хранимую процедуру.
USE AdventureWorks2012; GO SELECT definition FROM sys.sql_modules WHERE object_id = (OBJECT_ID(N'AdventureWorks2012.dbo.uspLogError'));
[В начало]
См. также
Справочник
OBJECT_DEFINITION (Transact-SQL)
sys.sql_modules (Transact-SQL)