Изменение имени хранимой процедурыRename a Stored Procedure

ОБЛАСТЬ ПРИМЕНЕНИЯ: даSQL Server даБаза данных SQL AzureдаХранилище данных SQL AzureдаParallel Data WarehouseAPPLIES TO: yesSQL Server yesAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

В этом разделе описывается, как переименовать хранимую процедуру SQL Server 2017SQL Server 2017 при помощи среды SQL Server Management StudioSQL Server Management Studio или Transact-SQLTransact-SQL.This topic describes how to rename a stored procedure in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL.

В этом разделеIn This Topic

Перед началомBefore You Begin

ОграниченияLimitations and Restrictions

  • Имена процедур должны соответствовать правилам для идентификаторов.Procedure names must comply with the rules for identifiers.

  • Переименование хранимой процедуры сохраняет object_id и все разрешения, которые были специально назначены для этой процедуры.Renaming a stored procedure retains the object_id and all the permissions that are specifically assigned to the procedure. Удаление и повторное создание объекта создает новый object_id и удаляет все разрешения, которые были специально назначены для этой процедуры.Dropping and recreating the object creates a new object_id and removes any permissions specifically assign to the procedure.

  • При переименовании хранимой процедуры не изменяется имя соответствующего объекта в столбце определения sys.sql_modules в представлении каталога.Renaming a stored procedure does not change the name of the corresponding object name in the definition column of the sys.sql_modules catalog view. Чтобы изменить его, нужно удалить хранимую процедуру и создать ее повторно с новым именем.To do that, you must drop and re-create the stored procedure with its new name.

  • Изменение имени или определения процедуры может привести к тому, что все зависящие от нее объекты при выполнении будут возвращать ошибку, если они не будут обновлены в соответствии с внесенными в процедуру изменениями.Changing the name or definition of a procedure can cause dependent objects to fail when the objects are not updated to reflect the changes that have been made to the procedure. Дополнительные сведения см. в разделе Просмотр зависимостей хранимой процедуры.For more information, see View the Dependencies of a Stored Procedure.

безопасностьSecurity

PermissionsPermissions

CREATE PROCEDURECREATE PROCEDURE
Требуется разрешение CREATE PROCEDURE на базу данных и разрешение ALTER на схему, в которой создается процедура, либо членство в предопределенной роли базы данных db_ddladmin .Requires CREATE PROCEDURE permission in the database and ALTER permission on the schema in which the procedure is being created, or requires membership in the db_ddladmin fixed database role.

ALTER PROCEDUREALTER PROCEDURE
Требуется разрешение ALTER на процедуру или членство в предопределенной роли базы данных db_ddladmin .Requires ALTER permission on the procedure or requires membership in the db_ddladmin fixed database role.

Использование среды SQL Server Management StudioUsing SQL Server Management Studio

Изменение имени хранимой процедурыTo rename a stored procedure

  1. В обозревателе объектов подключитесь к экземпляру Компонент Database EngineDatabase Engine и разверните его.In Object Explorer, connect to an instance of Компонент Database EngineDatabase Engine and then expand that instance.
  2. Последовательно разверните узел Базы данных, базу данных, которой принадлежит процедура, и узел Программирование.Expand Databases, expand the database in which the procedure belongs, and then expand Programmability.
  3. Определите зависимости хранимой процедуры.Determine the dependencies of the stored procedure.
  4. Разверните узел Хранимые процедуры, щелкните процедуру правой кнопкой мыши и выберите команду Переименовать.Expand Stored Procedures, right-click the procedure to rename, and then click Rename.
  5. Измените имя хранимой процедуры.Modify the procedure name.
  6. Измените имя процедуры во всех зависимых от нее объектах и скриптах.Modify the procedure name referenced in any dependent objects or scripts.

Использование Transact-SQLUsing Transact-SQL

Изменение имени хранимой процедурыTo rename a stored procedure

  1. Установите соединение с компонентом Компонент Database EngineDatabase Engine.Connect to the Компонент Database EngineDatabase Engine.
  2. На панели «Стандартная» нажмите Создать запрос.From the Standard bar, click New Query.
  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.Copy and paste the following example into the query window and click Execute. В этом примере показано, как переименовать процедуру путем ее удаления и повторного создания с новым именем.This example shows how to rename a procedure by dropping the procedure and re-creating the procedure with a new name. В первом примере создается хранимая процедура 'HumanResources.uspGetAllEmployeesTest.The first example creates the stored procedure 'HumanResources.uspGetAllEmployeesTest. Во втором примере имя хранимой процедуры меняется на HumanResources.uspEveryEmployeeTest.The second example renames the stored procedure to HumanResources.uspEveryEmployeeTest.
--Create the stored procedure.  
USE AdventureWorks2012;  
GO  

CREATE PROCEDURE HumanResources.uspGetAllEmployeesTest  
AS  
    SET NOCOUNT ON;  
    SELECT LastName, FirstName, Department  
    FROM HumanResources.vEmployeeDepartmentHistory;  
GO  
  
--Rename the stored procedure.  
EXEC sp_rename 'HumanResources.uspGetAllEmployeesTest', 'uspEveryEmployeeTest'; 

См. также:See Also

ALTER PROCEDURE (Transact-SQL) ALTER PROCEDURE (Transact-SQL)
CREATE PROCEDURE (Transact-SQL) CREATE PROCEDURE (Transact-SQL)
Создание хранимой процедуры Create a Stored Procedure
Изменение хранимой процедуры Modify a Stored Procedure
Удаление хранимой процедуры Delete a Stored Procedure
Просмотр определения хранимой процедуры View the Definition of a Stored Procedure
Просмотр зависимостей хранимой процедурыView the Dependencies of a Stored Procedure