ALTER OPERATOR — Modifier la définition d'un opérateur
ALTER OPERATORnom( {type_gauche| NONE } ,type_droit) OWNER TO {nouveau_propriétaire| CURRENT_ROLE | CURRENT_USER | SESSION_USER } ALTER OPERATORnom( {type_gauche| NONE } ,type_droit) SET SCHEMAnouveau_schemaALTER OPERATORnom( {type_gauche| NONE } ,type_droit) SET ( { RESTRICT = {proc_res| NONE } | JOIN = {proc_join| NONE } } [, ... ] )
ALTER OPERATOR modifie la définition d'un opérateur.
Seul le propriétaire de l'opérateur peut utiliser ALTER
OPERATOR.
Pour modifier le propriétaire, vous devez être capable d'utiliser
SET ROLE vers le nouveau rôle propriétaire, et ce rôle
doit avoir le droit CREATE sur le schéma de l'opérateur.
Ces
restrictions assurent que la modification du propriétaire produise le même
résultat que la suppression et la re-création de l'opérateur ;
néanmoins, un superutilisateur peut modifier le propriétaire de n'importe
quel opérateur.
nomLe nom de l'opérateur (éventuellement qualifié du nom du schéma).
type_gauche
Le type de données de l'opérande gauche de l'opérateur ;
NONE si l'opérateur n'a pas d'opérande gauche.
type_droitLe type de données de l'opérande droit de l'opérateur.
nouveau_propriétaireLe nouveau propriétaire de l'opérateur.
nouveau_schémaLe nouveau schéma de l'opérateur.
proc_resLa fonction d'estimation de la sélectivité de restriction pour cet opérateur ; écrire NONE pour supprimer cet estimateur.
join_procLa fonction d'estimation de la sélectivité de jointure pour cet opérateur ; écrire NONE pour supprimer cet estimateur.
Modifier le propriétaire d'un opérateur personnalisé a @@
b pour le type text :
ALTER OPERATOR @@ (text, text) OWNER TO joe;
Modifier les fonctions de sélectivité de restriction et de jointure pour un
opérateur personnalisé a && b pour le type
int[] ::
ALTER OPERATOR && (_int4, _int4) SET (RESTRICT = _int_contsel, JOIN = _int_contjoinsel);
Il n'existe pas d'instructions ALTER OPERATOR dans le
standard SQL.