# DROP PROCEDURE

The `DROP PROCEDURE` command removes a single stored procedure from the specified database.

## Syntax

```sql
DROP PROCEDURE [IF EXISTS] { procedure_name | database_name.procedure_name } [WITH ID <variant ID>]

```

## Remarks

* Only one stored procedure can be removed using the `DROP PROCEDURE` command.
* If `DROP PROCEDURE` is executed for a procedure that does not exist, the following error occurs:
  ```sql
  DROP PROCEDURE myprocedure;

  ```
  ```output

  ERROR 1998 (HY000): Function 'db1.myprocedure' doesn't exist
  ```

* However, if the `IF EXISTS` condition is used and the procedure does not exist, no error will occur:
  ```sql
  DROP PROCEDURE IF EXISTS myprocedure;

  ```
  ```output

  Query OK, 0 rows affected (0.00 sec)
  ```

* This command causes implicit commits. Refer to [COMMIT](https://docs.singlestore.com/db/v9.1/reference/sql-reference/data-manipulation-language-dml/commit.md) for more information.
* Refer to the [Permissions Matrix](https://docs.singlestore.com/db/v9.1/reference/sql-reference/security-management-commands/permissions-matrix.md) for the required permissions.
* If a procedure is overloaded, `DROP PROCEDURE` requires the procedure's variant ID which is available from [SHOW FUNCTIONS](https://docs.singlestore.com/db/v9.1/reference/sql-reference/procedural-sql-reference/show-functions.md). Refer to [Overloaded Functions and Stored Procedures](https://docs.singlestore.com/db/v9.1/reference/sql-reference/procedural-sql-reference/overloaded-functions-and-stored-procedures/#section-id235451809568514.md) for more information.

## Examples

**Drop a Procedure in the Current Database**

The following example removes an existing procedure from the current database.

Refer to [Overloaded Functions and Stored Procedures](https://docs.singlestore.com/db/v9.1/reference/sql-reference/procedural-sql-reference/overloaded-functions-and-stored-procedures.md) for an example of dropping an overloaded procedure.

```sql
SHOW FUNCTIONS;

```

```output

+------------------+------------------+
| Functions_in_db1 | Function Type    |
+------------------+------------------+
| myprocedure      | Stored Procedure |
+------------------+------------------+
1 row in set (0.00 sec)

```

```sql
DROP PROCEDURE myprocedure;

SHOW FUNCTIONS;

```

```output

Query OK, 0 rows affected (0.07 sec)
```

**Dropping a Procedure in Another Database**

The following example removes an existing stored procedure while connected to another database in your SingleStore cluster.

```sql
USE db1;

SHOW FUNCTIONS;

```

```output

+------------------+------------------+
| Functions_in_db1 | Function Type    |
+------------------+------------------+
| myprocedure      | Stored Procedure |
+------------------+------------------+
1 row in set (0.00 sec)

```

```sql
USE db2;

DROP PROCEDURE db1.myprocedure;

USE db1;

SHOW FUNCTIONS;

```

```output

Query OK, 0 rows affected (0.07 sec)
```

**Related Topics**

* [CREATE PROCEDURE](https://docs.singlestore.com/db/v9.1/reference/sql-reference/procedural-sql-reference/create-procedure.md)
* [SHOW CREATE FUNCTION](https://docs.singlestore.com/db/v9.1/reference/sql-reference/procedural-sql-reference/show-create-function.md)

***

Modified at: June 11, 2026

Source: [/db/v9.1/reference/sql-reference/procedural-sql-reference/drop-procedure/](https://docs.singlestore.com/db/v9.1/reference/sql-reference/procedural-sql-reference/drop-procedure/)

(An index of the documentation is available at /llms.txt)
