En PostgreSQL , la declaración de la función Drop se usa para eliminar una función.
Syntax: drop function [if exists] function_name(argument_list) [cascade | restrict]
Analicemos la sintaxis anterior:
- función de caída
- si existe
Cuando una función tiene objetos dependientes, como operadores o disparadores, no puede descartar esa función. Para descartar la función y sus objetos dependientes, debe especificar la opción de cascada. La función de soltar con la opción en cascada eliminará recursivamente la función, sus objetos dependientes y los objetos que dependen de esos objetos, y así sucesivamente.
De forma predeterminada, la declaración de la función de eliminación utiliza la opción de restricción que rechaza la eliminación de una función cuando tiene objetos dependientes. Para descartar varias funciones usando una sola instrucción de función de eliminación, especifique una lista separada por comas de nombres de funciones después de la palabra clave de la función de eliminación como esta:
drop function [if exists] function1, function2, ...;
A modo de ejemplo, utilizaremos la base de datos de muestra, es decir, dvdrental .
Ejemplo :
film_id título actor
create or replace function get_film_actors() returns setof record as $$ declare rec record; begin for rec in select film_id, title, (first_name || ' ' || last_name)::varchar from film inner join film_actor using(film_id) inner join actor using (actor_id) order by title loop return next rec; end loop; return; end; $$ language plpgsql;
get_film_actors
create or replace function get_film_actors(p_fiml_id int) returns setof record as $$ declare rec record; begin for rec in select film_id, title, (first_name || ' ' || last_name)::varchar from film inner join film_actor using(film_id) inner join actor using (actor_id) where film_id = p_fiml_id order by title loop return next rec; end loop; return; end; $$ language plpgsql;
get_film_actors
drop function get_film_actors;
Producción:
Dado que el procedimiento almacenado get_film_actors no es único, debe especificar qué función desea descartar.
La siguiente declaración descarta la función get_film_actors que tiene cero parámetros:
drop function get_film_actors();
get_film_actors
drop function get_film_actors;
drop function get_film_actors(int);
Conclusión:
- la funcion de soltar
- caída de función en cascada
Publicación traducida automáticamente
Artículo escrito por RajuKumar19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA