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:

memsql> 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:

memsql> 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.

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

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

memsql> 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 MemSQL cluster.

memsql> USE db1;

Database changed

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

memsql> USE db2;

Database changed

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

memsql> USE db1;

Database changed

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

Related Topics