ストアド プロシージャの名前の変更
このトピックでは、SQL Server Management Studio または Transact-SQL を使用して、SQL Server 2012 でストアド プロシージャの名前を変更する方法について説明します。
このトピックの内容
作業を開始する準備:
制限事項と制約事項
セキュリティ
ストアド プロシージャの名前を変更するために使用するもの:
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 の使用
ストアド プロシージャの名前を変更するには
オブジェクト エクスプローラーで、データベース エンジンに接続し、そのインスタンスを展開します。
[データベース] を展開し、プロシージャが属するデータベースを展開し、[プログラミング] を展開します。
[ストアド プロシージャ] を展開し、名前を変更するプロシージャを右クリックして、[名前の変更] をクリックします。
プロシージャ名を変更します。
依存オブジェクトまたはスクリプトで参照しているプロシージャ名を変更します。
[Top]
Transact-SQL の使用
ストアド プロシージャの名前を変更するには
データベース エンジンに接続します。
[標準] ツール バーの [新しいクエリ] をクリックします。
次の例をコピーしてクエリ ウィンドウに貼り付け、[実行] をクリックします。 この例では、プロシージャを削除した後、新しい名前でプロシージャを再作成することによってプロシージャの名前を変更する方法を示します。 最初の例では、'HumanResources.uspGetAllEmployeesTest という名前のストアド プロシージャを作成します。 2 番目の例では、ストアド プロシージャの名前を 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)