Documentation PostgreSQL 9.6.24 > Référence > Commandes SQL > REASSIGN OWNED | |
PREPARE TRANSACTION | REFRESH MATERIALIZED VIEW |
REASSIGN OWNED — Modifier le propriétaire de tous les objets de la base appartenant à un rôle spécifique
REASSIGN OWNED BY { ancien_rôle | CURRENT_USER | SESSION_USER } [, ...] TO { nouveau_rôle | CURRENT_USER | SESSION_USER }
REASSIGN OWNED demande au système de changer le propriétaire certains objets de la base. Les objets appartenant à l'un des old_role auront ensuite comme propriétaire new_role.
Le nom d'un rôle. Tous les objets de la base à l'intérieur de la base de connexion et tous les objets partagés (bases de données, tablespaces), dont le rôle est propriétaire, seront la propriété de nouveau_rôle.
Le nom du rôle qui sera le nouveau propriétaire des objets affectés.
REASSIGN OWNED est souvent utilisé pour préparer à la suppression de un ou plusieurs rôles. Comme REASSIGN OWNED n'affecte pas les objets des autres bases, il est généralement nécessaire d'exécuter cette commande pour chaque base contenant des objets dont le rôle à supprimer est propriétaire.
REASSIGN OWNED nécessite des droits sur le rôle source et sur le rôle cible.
La commande DROP OWNED(7) est une alternative qui supprime tous les objets de la base possédés par un ou plusieurs rôles.
La commande REASSIGN OWNED ne modifie pas les droits donnés aux ancien_rôle pour les objets dont il n'est pas propriétaire. De même, elle ne modifie pas les droits par défaut ajoutés avec ALTER DEFAULT PRIVILEGES. Utilisez DROP OWNED pour supprimer ces droits.
Voir Section 21.4, « Supprimer des rôles » pour plus de détails.