Delete a stored procedure
Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) SQL database in Microsoft Fabric
This article describes how to delete a stored procedure in SQL Server by using SQL Server Management Studio or Transact-SQL.
Limitations and restrictions
Deleting a procedure can cause dependent objects and scripts to fail when the objects and scripts are not updated to reflect the removal of the procedure. However, if a new procedure of the same name and the same parameters is created to replace the one that was deleted, other objects that reference it will still process successfully. For more information, see View the Dependencies of a Stored Procedure.
Permissions
Requires ALTER permission on the schema to which the procedure belongs, or CONTROL permission on the procedure.
Use SQL Server Management Studio
In Object Explorer, connect to an instance of Database Engine and then expand that instance.
Expand Databases, expand the database in which the procedure belongs, and then expand Programmability.
Expand Stored Procedures, right-click the procedure to remove, and then select Delete.
To view objects that depend on the procedure, select Show Dependencies.
Confirm the correct procedure is selected, and then select OK.
Remove references to the procedure from any dependent objects and scripts.
Use Transact-SQL
In Object Explorer, connect to an instance of Database Engine and then expand that instance.
Expand Databases, expand the database in which the procedure belongs, or, from the tool bar, select the database from the list of available databases.
On the File menu, select New Query.
Obtain the name of stored procedure to remove in the current database. From Object Explorer, expand Programmability and then expand Stored Procedures. Alternatively, in the query editor, run the following statement.
SELECT name AS procedure_name , SCHEMA_NAME(schema_id) AS schema_name , type_desc , create_date , modify_date FROM sys.procedures;
Copy and paste the following example into the query editor and insert a stored procedure name to delete from the current database.
DROP PROCEDURE [<stored procedure name>]; GO
Remove references to the procedure from any dependent objects and scripts.