Outdated Version

You are viewing an older version of this section. View current production version.

DROP FUNCTION

Removes a single function from the specified database, including user-defined scalar-valued functions (UDFs) and user-defined table-valued functions (TVFs).

Syntax

DROP FUNCTION [IF EXISTS] { function_name | database_name.function_name }

Remarks

Only one function can be removed using the DROP FUNCTION command.

If DROP FUNCTION is executed for a function that does not exist, the following error will occur:

DROP FUNCTION myfunction;
ERROR 1998 (HY000): Function 'db1.myfunction' doesn't exist

However, if the IF EXISTS condition is used and the function does not exist, no error will occur:

DROP FUNCTION IF EXISTS myfunction;
Query OK, 0 rows affected (0.00 sec)

Examples

Dropping a Function in the Current Database

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

SHOW FUNCTIONS;
+------------------+-----------------------+
| Functions_in_db1 | Function Type         |
+------------------+-----------------------+
| myfunction       | User Defined Function |
+------------------+-----------------------+
1 row in set (0.00 sec)

DROP FUNCTION myfunction;
Query OK, 0 rows affected (0.05 sec)

SHOW FUNCTIONS;
Query OK, 0 rows affected (0.07 sec)

Dropping a Function in Another Database

The following example removes an existing function while connected to another database in your cluster.

USE db1;

Database changed

SHOW FUNCTIONS;
+------------------+-----------------------+
| Functions_in_db1 | Function Type         |
+------------------+-----------------------+
| myfunction       | User Defined Function |
+------------------+-----------------------+
1 row in set (0.00 sec)

USE db2;

Database changed

DROP FUNCTION db1.myfunction;
Query OK, 0 rows affected (0.05 sec)

USE db1;

Database changed

SHOW FUNCTIONS;
Query OK, 0 rows affected (0.07 sec)

Related Topics