Documentation PostgreSQL 15.18 » Référence » Commandes SQL » ALTER ROUTINE

Précédent Niveau supérieur Suivant
ALTER ROLE Sommaire ALTER RULE

ALTER ROUTINE

ALTER ROUTINE — Modifier la définition d'une routine

Synopsis

ALTER ROUTINE nom [ ( [ [ mode_arg ] [ nom_arg ] type_arg [, ...] ] ) ]
 action [ ... ] [ RESTRICT ]
ALTER ROUTINE nom [ ( [ [ mode_arg ] [ nom_arg ] type_arg [, ...] ] ) ]
 RENAME TO nouveau_nom
ALTER ROUTINE nom [ ( [ [ mode_arg ] [ nom_arg ] type_arg [, ...] ] ) ]
 OWNER TO { nouveau_propriétaire | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
ALTER ROUTINE nom [ ( [ [ mode_arg ] [ nom_arg ] type_arg [, ...] ] ) ]
 SET SCHEMA nouveau_schéma
ALTER ROUTINE nom [ ( [ [ mode_arg ] [ nom_arg ] type_arg [, ...] ] ) ]
 [ NO ] DEPENDS ON EXTENSION nom_extension
action peut
être :
 IMMUTABLE | STABLE | VOLATILE
 [ NOT ] LEAKPROOF
 [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER
 PARALLEL { UNSAFE | RESTRICTED | SAFE }
 COST cout_exécution
 ROWS nb_lignes_résultat
 SET paramètre_configuration { TO | = } { valeur | DEFAULT }
 SET paramètre_configuration FROM CURRENT
 RESET paramètre_configuration
 RESET ALL
 

Description

ALTER ROUTINE modifie la définition d'une routine, qui peut être une fonction d'agrégat, une fonction normale ou une procédure. Voir ALTER AGGREGATE, ALTER FUNCTION, et ALTER PROCEDURE pour la description des paramètres, plus d'exemples et plus de détails.

Exemples

Pour renommer la routine foo ayant un argument de type integer en foobar :

ALTER ROUTINE foo(integer) RENAME TO foobar;
 

Cette commande fonctionnera indépendamment du fait que foo soit une fonction d'agrégat, une fonction ou une procédure.

Compatibilité

Cette commande est partiellement compatible avec la commande ALTER ROUTINE du standard SQL. Voir ALTER FUNCTION et ALTER PROCEDURE pour plus de détails. Autoriser les noms de routine à se référer à des noms de fonctions d'agrégat est une extension de PostgreSQL.

Voir aussi

ALTER AGGREGATE, ALTER FUNCTION, ALTER PROCEDURE, DROP ROUTINE

Veuillez noter qu'il n'existe pas de commande CREATE ROUTINE.

AltStyle によって変換されたページ (->オリジナル) /