DROP FUNCTION [ IF EXISTS ] function_name [ ( argument_type [, ...] ) ] [ CASCADE ];
Parameter or clause
Description
function_name
Name of the UDF you want to drop.
( argument_type [ , … ] )
Optional: Argument types of the function.Specify the argument types when the name of the function you want to drop isn’t unique within the schema.
IF EXISTS
Do not return an error if the specified function does not exist. A notice is issued in this case.
CASCADE option
If this option is specified, all objects (such as materialized views) that depend on the function, and in turn all objects that depend on those objects will be dropped.
A function can be dropped using one of the following methods:
Full function signature:
Copy
Ask AI
DROP FUNCTION function_name ( argument_type [, ...] );
Function name only, if it’s unique in its schema:
Copy
Ask AI
DROP FUNCTION function_name;
You can run SHOW FUNCTIONS; to list all existing UDFs to see if a function name is unique.
DROP FUNCTION function_name(); drops a function with zero arguments.DROP FUNCTION function_name; drops a function with any number of arguments, including zero, as long as the name is unique.
CREATE FUNCTION f1() RETURNS real LANGUAGE python AS func1 USING LINK 'http://localhost:8815';CREATE FUNCTION f1(int) RETURNS int LANGUAGE python AS func2 USING LINK 'http://localhost:8815';CREATE FUNCTION f1(int,int) RETURNS int LANGUAGE python AS func3 USING LINK 'http://localhost:8815';CREATE FUNCTION f2(int,int) RETURNS int LANGUAGE python AS func4 USING LINK 'http://localhost:8815';
You can drop a unique function by name:
Copy
Ask AI
DROP FUNCTION f2;
You cannot drop a function by name when its name is not unique:
Copy
Ask AI
DROP FUNCTION f1;
Copy
Ask AI
ERROR: QueryError: Catalog error: function name "f1" is not uniqueHINT: Specify the argument list to select the function unambiguously.
You can drop a function by full signature:
Copy
Ask AI
DROP FUNCTION f1();DROP FUNCTION f1(int);
Now, f1(int,int) is the only function named f1, you can drop it by name or full signature:
A step-by-step guide for using UDFs in RisingWave: installing the RisingWave UDF API, defining functions in a Python file, starting the UDF server, and declaring UDFs in RisingWave.