DROP USER - Amazon Redshift

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

DROP USER

Supprime un utilisateur d’une base de données. Plusieurs utilisateurs peuvent être supprimés à l'aide d'une seule DROP USER commande. Vous devez être un superutilisateur de base de données ou être DROP USER autorisé à exécuter cette commande.

Syntaxe

DROP USER [ IF EXISTS ] name [, ... ]

Paramètres

SI EXISTS

Clause indiquant que si l’utilisateur spécifié n’existe pas, la commande ne doit faire aucune modification et renvoyer un message selon lequel l’utilisateur n’existe pas, plutôt que de mettre fin avec une erreur.

Cette clause est utile lors de la création de scripts, afin que le script n'échoue pas s'il est DROP USER exécuté contre un utilisateur inexistant.

nom

Nom de l’utilisateur à supprimer. Vous pouvez spécifier plusieurs utilisateurs, avec une virgule séparant chaque utilisateur du suivant.

Notes d’utilisation

Vous ne pouvez pas supprimer l’utilisateur nommé rdsdb ou l’utilisateur administrateur de la base de données qui est généralement nommée awsuser ou admin.

Vous ne pouvez pas supprimer un utilisateur si l’utilisateur possède un objet de base de données, tel qu’un schéma, une base de données, une table ou une vue, ou si l’utilisateur a des privilèges sur une base de données, une table, une colonne ou un groupe. Si vous tentez de supprimer un tel utilisateur, vous recevez l’une des erreurs suivantes.

ERROR: user "username" can't be dropped because the user owns some object [SQL State=55006] ERROR: user "username" can't be dropped because the user has a privilege on some object [SQL State=55006]

Pour obtenir des instructions détaillées sur la façon de trouver les objets appartenant à un utilisateur de base de données, consultez Comment résoudre l’erreur « l’utilisateur ne peut pas être supprimé » dans Amazon Redshift ? dans le Centre de connaissances.

Note

Amazon Redshift vérifie seulement la base de données actuelle avant de supprimer un utilisateur. DROPUSERne renvoie pas d'erreur si l'utilisateur possède des objets de base de données ou dispose de privilèges sur des objets d'une autre base de données. Si vous supprimez un utilisateur qui possède des objets d’une autre base de données, le propriétaire de ces objets acquiert l’état « unknown ».

Si un utilisateur possède un objet, supprimez d’abord l’objet ou remplacez sa propriété par celle d’un autre utilisateur avant de supprimer l’utilisateur original. Si l’utilisateur dispose de privilèges pour un objet, révoquez d’abord les privilèges avant de supprimer l’utilisateur. L’exemple suivant montre la suppression d’un objet, la modification de la propriété et la révocation des privilèges avant de supprimer l’utilisateur.

drop database dwdatabase; alter schema dw owner to dwadmin; revoke all on table dwtable from dwuser; drop user dwuser;

Exemples

L’exemple suivant supprime un utilisateur appelé paulo :

drop user paulo;

L’exemple suivant supprime deux utilisateurs, paulo et martha :

drop user paulo, martha;

L’exemple suivant supprime l’utilisateur paulo s’il existe, ou ne fait rien et renvoie un message dans le cas contraire :

drop user if exists paulo;