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
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).
Le nom de la base dont les attributs sont à modifier.
Le nombre de connexions concurrentes sur la base de données. -1 signifie aucune limite.
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.
Le nouveau nom de la base.
Le nouveau propriétaire de la base.
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.