Изменение имени хранимой процедуры
В этом разделе описывается, как переименовать хранимую процедуру SQL Server 2012 при помощи среды Среда SQL Server Management Studio или Transact-SQL.
В этом разделе
Перед началом работы выполните следующие действия.
Ограничения
Безопасность
Для переименования хранимой процедуры используется:
Среда SQL Server Management Studio
Transact-SQL
Перед началом
Ограничения
Имена процедур должны соответствовать правилам для идентификаторов.
При переименовании хранимой процедуры не изменяется имя соответствующего объекта в столбце определения представления каталога sys.sql_modules. Поэтому не рекомендуется переименовывать объекты этого типа. Лучше удалить хранимую процедуру и создать ее повторно с новым именем.
Изменение имени или определения процедуры может привести к тому, что все зависящие от нее объекты при выполнении будут возвращать ошибку, если они не будут обновлены в соответствии с внесенными в процедуру изменениями. Дополнительные сведения см. в разделе Просмотр зависимостей хранимой процедуры.
Безопасность
Разрешения
CREATE PROCEDURE
Требуется разрешение CREATE PROCEDURE на базу данных и разрешение ALTER на схему, в которой создается процедура, либо членство в предопределенной роли базы данных db_ddladmin.ALTER PROCEDURE
Требуется разрешение ALTER на процедуру или членство в предопределенной роли базы данных db_ddladmin.
[Top]
Использование среды SQL Server Management Studio
Изменение имени хранимой процедуры
В обозревателе объектов подключитесь к экземпляру компонента Компонент Database Engine и разверните его.
Последовательно разверните узел Базы данных, базу данных, которой принадлежит процедура, и узел Программирование.
Разверните узел Хранимые процедуры, щелкните процедуру правой кнопкой мыши и выберите команду Переименовать.
Измените имя хранимой процедуры.
Измените имя процедуры во всех зависимых от нее объектах и скриптах.
[Top]
Использование Transact-SQL
Изменение имени хранимой процедуры
Подключитесь к компоненту Компонент Database Engine.
На стандартной панели выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В этом примере показано, как переименовать процедуру путем ее удаления и повторного создания с новым именем. В первом примере создается хранимая процедура 'HumanResources.uspGetAllEmployeesTest. Во втором примере имя хранимой процедуры меняется на HumanResources.uspEveryEmployeeTest.
--Create the stored procedure.
USE AdventureWorks2012;
GO
IF OBJECT_ID ( 'HumanResources.uspGetAllEmployeesTest', 'P' ) IS NOT NULL
DROP PROCEDURE HumanResources.uspGetAllEmployeesTest;
GO
CREATE PROCEDURE HumanResources.uspGetAllEmployeesTest
AS
SET NOCOUNT ON;
SELECT LastName, FirstName, Department
FROM HumanResources.vEmployeeDepartmentHistory;
GO
--Rename the stored procedure.
USE AdventureWorks2012;
GO
IF OBJECT_ID ( 'HumanResources.uspGetAllEmployeesTest', 'P' ) IS NOT NULL
DROP PROCEDURE HumanResources.uspGetAllEmployeesTest;
GO
CREATE PROCEDURE HumanResources.uspEveryEmployeeTest
AS
SET NOCOUNT ON;
SELECT LastName, FirstName, Department
FROM HumanResources.vEmployeeDepartmentHistory;
GO
[Top]
См. также
Справочник
Инструкция ALTER PROCEDURE (Transact-SQL)
CREATE PROCEDURE (Transact-SQL)