PostgreSQLLa base de données la plus sophistiquée au monde.

ALTER DATABASE

ALTER DATABASE — Modifier une base de données

Synopsis

ALTER DATABASE nom [ [ WITH ] option [ ... ] ]

où option peut être :

    CONNECTION LIMIT limite_connexion

ALTER DATABASE nom SET paramètre { TO | = } { valeur | DEFAULT }
ALTER DATABASE nom RESET paramètre
ALTER DATABASE nom RENAME TO nouveau_nom
ALTER DATABASE nom OWNER TO nouveau_propriétaire

Description

ALTER DATABASE modifie les attributs d'une base de données.

La première forme modifie certains paramètres d'une base de données (voir ci-dessous pour les détails). Seul le propriétaire de la base de données ou un superutilisateur peut modifier ces paramètres.

La deuxième et la troisième formes modifient la valeur de session par défaut d'une variable de configuration de base de données. À chaque démarrage ultérieur d'une nouvelle session dans cette base, la valeur spécifiée devient la valeur de session par défaut. Celle-ci surcharge la configuration présente dans le fichier postgresql.conf ou celle héritée de la ligne de commande du postgres. Seul le propriétaire de la base ou un superutilisateur peut modifier les valeurs de session par défaut d'une base. Certaines variables ne peuvent pas être configurées de cette façon ou ne peuvent l'être que par un superutilisateur.

La quatrième forme permet de renommer la base. Seul le propriétaire ou un superutilisateur peut renommer une base. Un propriétaire qui n'est pas superutilisateur doit en outre posséder le droit CREATEDB. La base en cours d'utilisation ne peut pas être renommée (on se connectera à une base différente pour réaliser cette opération).

La cinquième forme change le propriétaire de la base de données. Pour changer le propriétaire, il faut être propriétaire de la base de données et membre direct ou indirect du nouveau rôle propriétaire. Le droit CREATEDB est également requis (les superutilisateurs ont automatiquement tous ces droits).

Paramètres

nom

Le nom de la base dont les attributs sont à modifier.

limite_connexion

Le nombre de connexions concurrentes sur la base de données. -1 signifie aucune limite.

paramètre, valeur

Initialise le paramètre de session par défaut sur cette base de donnée à la valeur précisée. Si valeur est DEFAULT ou que, de façon équivalente, RESET est utilisé, la configuration spécifique à la base est supprimée et celle par défaut du système est récupérée par les nouvelles sessions. RESET ALL est utilisé pour supprimer tout paramètre de configuration spécifique à la base de données.

Voir SET et Chapitre 17, Configuration du serveur pour plus d'informations sur les noms et valeurs de paramètres autorisés.

nouveau_nom

Le nouveau nom de la base.

nouveau_propriétaire

Le nouveau propriétaire de la base.

Notes

Il est possible de lier une valeur de session par défaut à un utilisateur plutôt qu'à une base. Voir ALTER USER à ce propos. En cas de conflit, les configurations spécifiques à l'utilisateur l'emportent sur celles spécifiques à la base.

Exemples

Désactiver les parcours d'index par défaut de la base test :

ALTER DATABASE test SET enable_indexscan TO off;

Compatibilité

La commande ALTER DATABASE est une extension PostgreSQL™.