DROP FUNCTION

Gilt für:durch Häkchen mit „Ja“ markiert Databricks SQL durch Häkchen mit „Ja“ markiert Databricks Runtime

Löscht eine temporäre oder permanente benutzerdefinierte Funktion (User-Defined Function, UDF).

Erlaubnisse

Um eine Funktion im Unity-Katalog zu platzieren, muss man das MANAGE Privileg auf die Funktion haben oder deren Besitzer sein, sowie USE CATALOG auf dem Katalog und USE SCHEMA auf dem Schema, in dem sich die Funktion befindet.

Gemäß der Objekthierarchie können Besitzer des übergeordneten Schemas oder Katalogs und Der Benutzer, für MANAGE die dieser Vorgang ausgeführt wird, ebenfalls ausführen. Die Nutzungsrechte, die sie benötigen, hängen von der Objektebene ab, auf der sie Eigentum haben, oder MANAGE. Siehe Nutzungsrechtanforderungen für MANAGE.

Syntax

DROP [ TEMPORARY ] FUNCTION [ IF EXISTS ] function_name

Parameter

  • function_name

    Name einer vorhandenen Funktion. Der Funktionsname kann optional mit einem Schemanamen qualifiziert werden.

  • TEMPORARY

    Wird zum Löschen einer TEMPORARY-Funktion verwendet.

  • WENN EXISTIERT

    Wird dieser Parameter angegeben, wird keine Ausnahme ausgelöst, wenn die Funktion nicht vorhanden ist.

Beispiele

-- Create a permanent function `hello`
> CREATE FUNCTION hello() RETURNS STRING RETURN 'Hello World!';

-- Create a temporary function `hello`
> CREATE TEMPORARY FUNCTION hello() RETURNS STRING RETURN 'Good morning!';

-- List user functions
> SHOW USER FUNCTIONS;
  default.hello
          hello

-- Drop a permanent function
> DROP FUNCTION hello;

-- Try to drop a permanent function which is not present
> DROP FUNCTION hello;
Error: ROUTINE_NOT_FOUND

-- List the functions after dropping, it should list only temporary function
> SHOW USER FUNCTIONS;
 hello

-- Drop a temporary function if exists
> DROP TEMPORARY FUNCTION IF EXISTS hello;