ALTER DATABASE
La commande ALTER DATABASE permet de modifier les propriétés d'une base de données, par exemple le jeu de caractères par défaut, le nom, le schéma par défaut, le propriétaire de la base de données ou la collecte de données d'historique pour la base de données.
Syntaxe
ALTER DATABASE <db_name> [ OWNER TO <user> ] [ RENAME TO <new_db_name> ]
[ SET DEFAULT SCHEMA <schema_name> ] [ SET DEFAULT CHARACTER SET LATIN9 ] ]
[ COLLECT HISTORY {ON|OFF|DEFAULT} ] [ DATA_VERSION_RETENTION_TIME <number-of-days> NOCASCADE ]
[GROOM BACKUPSET {<backupset>|DEFAULT}] [LOCK FOR UPDATE] [UNLOCK]Entrées
| Entrée | Descriptif |
|---|---|
| <nom_base_de_données> | Nom de la base de données. |
| PROPRIÉTAIRE | Le nom du nouveau propriétaire de la base de données. |
| Renommer en | Le nouveau nom de la base de données. |
| DÉFINIR LE SCHÉMA PAR DÉFAUT | Schéma par défaut pour les utilisateurs qui se connectent à la base de données. Si vous modifiez le schéma par défaut, les utilisateurs qui ont hérité de l'accès au schéma par défaut précédent perdent l'accès à ce schéma et héritent de l'accès au nouveau schéma. Les utilisateurs n'ont plus accès à l'ancien schéma par défaut, sauf si l'accès leur a été explicitement accordé. |
| DÉFINIR LE JEU DE CARACTÈRES PAR DÉFAUT | Définissez le jeu de caractères par défaut sur LATIN9 pour pouvoir comparer, joindre ou extraire des données de classe char ou nchar. |
| RECUEILLIR L'HISTOIRE | Indique si les données d'historique doivent être collectées pour les sessions attachées à cette base de données.
|
| TEMPS DE CONSERVATION DES DONNÉES | Met à jour la valeur de DATA_VERSION_RETENTION_TIME pour la base de données spécifiée. La nouvelle valeur n'a aucun impact sur les schémas et les tables existants dans la base de données. Mais cette valeur détermine la valeur par défaut héritée par une commande CREATE SCHEMA ultérieure dans la base de données qui ne spécifie pas explicitement cette propriété. La valeur maximale autorisée est de 92 jours, ce qui correspond au nombre maximal de jours d'un trimestre civil. |
| MARIÉ BACKUPSET | Si la valeur est DEFAULT, la commande GROOM TABLE détermine automatiquement le jeu de sauvegarde par défaut pour la base de données de la table. S'il est défini sur une chaîne backupsetid spécifique, GROOM TABLE utilise le jeu de sauvegarde spécifié comme jeu de sauvegarde par défaut pour la base de données de la table. |
| VERROUILLAGE POUR MISE À JOUR | Suspendre toute écriture dans la base de données. |
| UNLOCK | Déverrouille la base de données. |
Sorties
| Sortie | Descriptif |
|---|---|
| ALTER DATABASE | La commande a été exécutée avec succès. |
| ERROR: ALTER DATABASE: database "db1" is being accessed by other users | La base de données est utilisée par d'autres utilisateurs. |
Droits
Vous devez être l'utilisateur admin, le propriétaire de la base de données, ou votre compte doit avoir le privilège Alter pour la base de données ou pour la classe d'objets Database. Pour modifier le propriétaire de la base de données ou le schéma par défaut, vous devez disposer du privilège Liste pour cet utilisateur ou ce schéma.
Utilisation
- Modifier le jeu de caractères par défaut pour la base de données "
empMYDB.SCH1(USER)=> ALTER DATABASE emp SET DEFAULT CHARACTER SET LATIN9; - Modifier le propriétaire de la base de données "
empMYDB.SCH1(USER)=> ALTER DATABASE emp OWNER TO admin3; - Renommer la base de données "
empMYDB.SCH1(USER)=> ALTER DATABASE emp RENAME TO employees; - Verrouiller la base de données '
emppour suspendre toute écriture :MYDB.SCH1(USER)=> ALTER DATABASE emp lock for update; - Déverrouiller la base de données "
empMYDB.SCH1(USER)=> ALTER DATABASE emp unlock;