Cette section décrit comment créer une base de données, se connecter à une base de données existante, modifier la structure des fichiers, déplacer la base de données vers et depuis un état de sauvegarde sûr et supprimer la base de données.
Cette section décrit comment créer une base de données, se connecter à une base de données existante, modifier la structure des fichiers, déplacer la base de données vers et depuis un état de sauvegarde sûr et supprimer la base de données.
CREATE DATABASE
Pour créer une nouvelle base de données.
DSQL, ESQL
CREATE {DATABASE | SCHEMA} <filespec> [<db_initial_option> [<db_initial_option> ...]] [<db_config_option> [<db_config_option> ...]] <db_initial_option> ::= USER username | PASSWORD 'password' | ROLE rolename | PAGE_SIZE [=] size | LENGTH [=] num [PAGE[S]] | SET NAMES 'charset' <db_config_option> ::= DEFAULT CHARACTER SET default_charset [COLLATION collation] | <sec_file> | DIFFERENCE FILE 'diff_file' <filespec> ::= '[<server_spec>]{filepath | db_alias}' <server_spec> ::= host[/ {port | service}]: | \\host\ | <protocol>://[host[:{port | service}]/] <protocol> ::= inet | inet4 | inet6 | wnet | xnet <sec_file> ::= FILE 'filepath' [LENGTH [=] num [PAGE[S]] [STARTING [AT [PAGE]] pagenum]
Note
|
Chaque option db_initial et db_config_option ne peut apparaître plus d’une fois, à l’exception de sec_file qui peut apparaître zéro fois ou plus. |
Paramètre | Description |
---|---|
filespec |
Spécification du fichier de base de données primaire. |
server_spec |
Spécification du serveur distant.Comprend le nom et le protocole du serveur.Requis si la base de données est créée sur un serveur distant. |
filepath |
Chemin d’accès complet et nom du fichier, y compris l’extension.Le nom du fichier doit être spécifié en fonction des spécificités de la plate-forme utilisée. |
db_alias |
L’alias de la base de données présente dans le fichier databases.conf |
host |
Le nom du serveur ou l’adresse IP où la base de données est créée. |
port |
Le numéro du port sur lequel le serveur distant écoute (paramètre |
service |
Nom du service.Doit correspondre à la valeur du paramètre |
protocol |
Nom du protocole. |
username |
Le nom de l’utilisateur/propriétaire de la base de données.Il peut être entouré de guillemets simples ou doubles.Si le nom d’utilisateur est entre guillemets, il est sensible à la casse. |
password |
Le mot de passe de l’utilisateur/propriétaire de la base de données.Sensible à la casse. |
role |
Le nom du rôle dont les droits peuvent être pris en compte lors de la création de la base de données.Il peut être entouré de guillemets simples ou doubles.Si le nom du rôle est entre guillemets, il est sensible à la |
size |
Taille de la page pour la base de données.Valeurs valides : 4096, 8192, 16384, 32768.La taille de page par défaut est de 8192. |
num |
Taille maximale du fichier primaire ou secondaire en pages. |
charset |
Spécifie le jeu de caractères de la connexion disponible après la création réussie de la base de données. |
default_charset |
Spécifie le jeu de caractères par défaut pour les types de données de type chaîne. |
collation |
Le jeu de caractères pour le tri par défaut. |
sec_file |
Spécification du fichier secondaire. |
pagenum |
Le numéro de page à partir duquel le fichier de la base de données secondaire commence. |
diff_file |
Chemin et nom du fichier delta. |
L’instruction CREATE DATABASE
crée une nouvelle base de données.Vous pouvez utiliser CREATE DATABASE
ou CREATE SCHEMA
.Ce sont des synonymes.
Une base de données peut être constituée d’un ou plusieurs fichiers.Le premier fichier, primaire, est appelé le fichier principal, les autres fichiers sont appelés les fichiers secondaires.
Note
|
Actuellement, les bases de données multi-fichiers sont un atavisme.Il est logique d’utiliser des bases de données multi-fichiers sur les anciens systèmes de fichiers où la taille de chaque fichier est limitée.Par exemple, en FAT32, vous ne pouvez pas créer un fichier de plus de 4 gigaoctets. |
La spécification du fichier primaire est le nom du fichier de la base de données et son extension, en précisant le chemin d’accès complet à celui-ci selon les règles du système d’exploitation utilisé.Le fichier de la base de données doit être absent lors de la création de la base de données.Sinon, un message d’erreur sera affiché et la base de données ne sera pas créée.Si le chemin complet de la base de données n’est pas spécifié, la base de données sera créée dans l’un des répertoires du système.Le choix du répertoire dépend du système d’exploitation.
Des alias peuvent être utilisés à la place du chemin d’accès complet au fichier de la base de données primaire. Les alias sont décrits dans le fichier databases.conf au format :
alias = filepath
Note
|
En plus de spécifier les alias de la base de données, les paramètres de niveau base de données pour chaque base de données décrite peuvent être spécifiés dans ce fichier.Ces paramètres sont spécifiés entre crochets immédiatement après la déclaration de l’alias. |
Lors de la création d’une base de données sur un serveur distant, la spécification du serveur distant doit être précisée.La spécification du serveur distant dépend du protocole utilisé.
Si vous utilisez TCP/IP lors de la création de la base de données, la spécification du fichier primaire doit ressembler à ceci
host[/{port | service}]:{filepath | db_alias}
Si vous utilisez un protocole appelé Name Pipes lors de la création de la base de données, la spécification du fichier primaire doit ressembler à ceci
\\host\{filepath | db_alias}
Il existe également une syntaxe unifiée de type URL pour la spécification du serveur distant.Dans cette syntaxe, le premier paramètre est le nom du protocole, suivi du nom ou de l’adresse IP du serveur, du numéro de port et du chemin d’accès au fichier de base de données primaire ou à l’alias.Les valeurs suivantes peuvent être spécifiées comme protocole :
TCP/IP (essayez d’abord TCP/IP v6, si vous ne réussissez pas, alors TCP/IP v4) ;
TCP/IP v4;
TCP/IP v6;
Protocole "Named Pipes (Tuyaux nommés) ;
protocole local.
<protocol>://[host[:{port | service}]/]{filepath | db_alias}
CREATE DATABASE
USER
et PASSWORD
Les phrases facultatives USER
et PASSWORD
spécifient, respectivement, le nom d’utilisateur et le mot de passe présents dans la base de données de sécurité (security4.fdb ou celle spécifiée dans SecurityDatabase
). L’utilisateur et le mot de passe peuvent être omis si les variables d’environnement ISC_USER
et ISC_PASSWORD
sont définies.L’utilisateur spécifié lors de la création de la base de données sera le propriétaire de la base de données.
ROLE
La clause optionnelle ROLE
spécifie le nom du rôle (généralement RDB$ADMIN
) dont les permissions seront prises en compte lors de la création de la base de données.Le rôle doit être attribué à un utilisateur dans la base de données sécurisée correspondante.
PAGE_SIZE
La phrase optionnelle PAGE_SIZE
définit la taille des pages de la base de données.Cette taille sera définie pour le fichier primaire et tous les fichiers de base de données secondaires.Si une taille de page de base de données inférieure à 4096 est saisie, elle sera automatiquement modifiée en 4096.Les autres nombres (non égaux à 4096, 8192, 16384 ou 32768) seront remplacés par la plus petite valeur prise en charge.Si aucune taille de page de base de données n’est spécifiée, la valeur par défaut est 8192.
Tip
|
Plus n’est pas mieux
Des pages plus grandes peuvent contenir plus d’enregistrements sur une page, avoir des index plus larges et plus nombreux, mais elles gaspillent également plus d’espace BLOB (comparez l’espace BLOB gaspillé de 3 Ko sur une page de taille 4096 et le même espace BLOB de 32768 : +/- 1 Ko contre +/- 29 Ko). De plus, avec une taille de page plus grande, il y a plus de concurrence pour la même page de données, car elle contient plus d’enregistrements qui pourraient se trouver sur des pages différentes. |
LENGTH
La clause optionnelle LENGTH
spécifie la taille maximale d’un fichier de base de données primaire ou secondaire en pages.Lorsqu’une base de données est créée, son fichier primaire ou secondaire occupera le nombre minimum de pages nécessaires au stockage des données du système, quelle que soit la valeur définie dans la clause LENGHT
.Pour un seul fichier ou le dernier fichier (dans une base de données multi-fichiers), la valeur de LENGTH
n’a aucun effet sur la taille du fichier.Le fichier augmentera automatiquement sa taille si nécessaire.
SET NAMES
La clause optionnelle SET NAMES
spécifie le jeu de caractères de la connexion disponible après la création réussie de la base de données.Le jeu de caractères par défaut est NONE.
DEFAULT CHARACTER SET
La phrase facultative DEFAULT CHARACTER SET
spécifie le jeu de caractères par défaut pour les types de données de type chaîne.Les jeux de caractères sont utilisés pour les types CHAR
, VARCHAR
et BLOB
.Le jeu de caractères par défaut est NONE
.Vous pouvez également spécifier un tri par défaut (COLLATION
) pour le jeu de caractères par défaut. Dans ce cas, le tri deviendra silencieux pour le jeu de caractères par défaut (c.-à-d.pour l’ensemble de la base de données, sauf si d’autres jeux de caractères sont utilisés).
STARTING AT
La phrase STARTING AT
indique le numéro de page de la base de données à partir duquel le prochain fichier de la base de données doit commencer.Lorsque le fichier précédent est entièrement rempli de données selon le numéro de page spécifié, le système commence à placer les nouvelles données ajoutées dans le fichier de base de données suivant.
DIFFERENCE FILE
La phrase facultative DIFFERENCE FILE
spécifie le chemin et le nom du fichier delta dans lequel seront écrites les modifications apportées à la base de données après qu’elle ait été mise en mode copy-safe
en exécutant la commande ALTER DATABASE BEGIN BACKUP
.Pour une description complète de cette option. Voir ALTER DATABASE
.
Par défaut, la base de données est créée dans le dialecte 3.Afin de créer la base de données dans le dialecte SQL que vous souhaitez, vous devez définir le dialecte souhaité avant d’exécuter l’instruction de création de la base de données en exécutant l’instruction SET SQL DIALECT
.
L’instruction CREATE DATABASE
peut être exécutée :
Utilisateurs avec le privilège CREATE DATABASE
.
Création d’une base de données sur un système d’exploitation Windows situé sur le lecteur D avec une taille de page de 8192.Le propriétaire de la base de données sera l’utilisateur assistant.La base de données sera en dialecte 1, et utilisera le jeu de caractères par défaut WIN1251.
SET SQL DIALECT 1;
CREATE DATABASE 'D:\test.fdb'
USER wizard PASSWORD 'player' ROLE RDB$ADMIN
DEFAULT CHARACTER SET WIN1251;
Création d’une base de données sur un système d’exploitation Linux avec une taille de page de 4096.Le propriétaire de la base de données sera l’utilisateur assistant.La base de données sera en dialecte 3, et utilisera le jeu de caractères par défaut UTF8 avec un tri diminué UNICODE_CI_AI
.
CREATE DATABASE '/home/firebird/test.fdb'
USER "wizard" PASSWORD 'player' ROLE 'RDB$ADMIN'
PAGE_SIZE = 4096
DEFAULT CHARACTER SET UTF8 COLLATION UNICODE_CI_AI;
Important
|
Dans ce cas, la base de données sera sensible à la casse pour le nom d’utilisateur car il est spécifié entre guillemets. |
Création d’une base de données sur le serveur de base distant situé au niveau du chemin référencé par l’alias test décrit dans le fichier databases.conf.Le protocole utilisé est le TCP.Le propriétaire de la base de données sera l’assistant utilisateur.
CREATE DATABASE 'baseserver:test'
USER wizard PASSWORD 'player' ROLE RDB$ADMIN
DEFAULT CHARACTER SET UTF8;
Il en va de même pour l’utilisation d’une syntaxe unifiée de type URL pour spécifier un serveur distant.
CREATE DATABASE 'inet://baseserver:3050/test'
USER wizard PASSWORD 'player' ROLE RDB$ADMIN
DEFAULT CHARACTER SET UTF8;
ou
CREATE DATABASE 'inet://baseserver:gds_db/test'
USER wizard PASSWORD 'player' ROLE RDB$ADMIN
DEFAULT CHARACTER SET UTF8;
Lorsque vous utilisez des noms de domaine, il peut être utile de préciser quel protocole IP v4 ou IP v6 vous souhaitez utiliser.
CREATE DATABASE 'inet4://baseserver/test'
USER wizard PASSWORD 'player' ROLE RDB$ADMIN
DEFAULT CHARACTER SET UTF8;
ou
CREATE DATABASE 'inet6://baseserver/test'
USER wizard PASSWORD 'player' ROLE RDB$ADMIN
DEFAULT CHARACTER SET UTF8;
Création d’une base de données avec une adresse IP (IPv4) au lieu d’un nom de serveur.
CREATE DATABASE '127:0:0:1:test'
USER wizard PASSWORD 'player' ROLE RDB$ADMIN
DEFAULT CHARACTER SET UTF8;
Création d’une base de données avec une adresse IP (IPv6) au lieu d’un nom de serveur.
CREATE DATABASE '[::1]:test'
USER wizard PASSWORD 'player' ROLE RDB$ADMIN
DEFAULT CHARACTER SET UTF8;
Création d’une base de données en dialecte 3 avec le jeu de caractères par défaut UTF8.Le fichier primaire contiendra 10000 pages avec une taille de page de 8192.Dès que le processus de base de données remplit le fichier primaire, le SGBD place de nouvelles données dans le fichier secondaire test.fdb2.Les mêmes actions se produiront avec le deuxième fichier secondaire.La taille du dernier fichier augmentera tant que le système d’exploitation le permettra ou tant que la mémoire du périphérique de stockage externe ne sera pas épuisée.
SET SQL DIALECT 3;
CREATE DATABASE 'baseserver:D:\test.fdb'
USER wizard PASSWORD 'player' ROLE 'RDB$ADMIN'
PAGE_SIZE = 8192
DEFAULT CHARACTER SET UTF8
FILE 'D:\test.fdb2'
STARTING AT PAGE 10001
FILE 'D:\test.fdb3'
STARTING AT PAGE 20001;
Création d’une base de données en dialecte 3 avec le jeu de caractères par défaut UTF8.Le fichier primaire contiendra 10000 pages avec une taille de page de 8192.Dès que le processus de base de données remplit le fichier primaire, le SGBD place de nouvelles données dans le fichier secondaire test.fdb2.Des actions similaires auront lieu avec le deuxième fichier secondaire.
SET SQL DIALECT 3;
CREATE DATABASE 'baseserver:D:\test.fdb'
USER wizard PASSWORD 'player' ROLE 'RDB$ADMIN'
PAGE_SIZE = 8192
LENGTH 10000 PAGES
DEFAULT CHARACTER SET UTF8
FILE 'D:\test.fdb2'
FILE 'D:\test.fdb3'
STARTING AT PAGE 20001;
[fblangref-ddl-database-alter], [fblangref-ddl-database-drop].
ALTER DATABASE
Pour modifier la structure des fichiers de la base de données, la mettre en "sécurité pour la copie" ou modifier certaines propriétés de la base de données.
DSQL, ESQL
ALTER {DATABASE | SCHEMA} {<add_sec_clause> [<add_sec_clausee> ...]} | {ADD DIFFERENCE FILE 'diff_file' | DROP DIFFERENCE FILE} | {{BEGIN | END} BACKUP} | {SET DEFAULT CHARACTER SET charset} | {SET DEFAULT SQL SECURITY {DEFINER | INVOKER}} | {SET LINGER TO linger_duration | DROP LINGER} | {ENCRYPT WITH plugin_name [KEY key_name] | DECRYPT} | {ENABLE | DISABLE} PUBLICATION | INCLUDE {TABLE <table_list> | ALL} TO PUBLICATION | EXCLUDE {TABLE <table_list> | ALL} FROM PUBLICATION <add_sec_clause> ::= ADD <sec_file> [<sec_file> ...] <sec_file> ::= FILE 'filepath' [STARTING [AT [PAGE]] pagenum] [LENGTH [=] num [PAGE[S]] <table_list> ::= tablename [, tablename ...]
Paramètre | Description |
---|---|
add_sec_clause |
sec_file pour ajouter un fichier de base de données secondaire. |
sec_file |
Spécifier le fichier secondaire. |
filepath |
Chemin et nom du fichier delta ou du fichier de base de données secondaire. |
pagenum |
Le numéro de la page à partir de laquelle le fichier de la base de données secondaire commence. |
num |
num Taille maximale du fichier secondaire en pages. |
diff_file |
diff_file chemin et nom du fichier delta. |
charset |
jeu de caractères par défaut pour la base de données. |
linger_duration |
délai en secondes. |
plugin_name |
nom du plugin de cryptage. |
key_name |
Nom de la clé de cryptage. |
table_list |
Liste des tableaux à activer ou à désactiver pour lespour la réplication. |
tablename |
nom de la base de donnée. |
L’instruction ALTER DATABASE
modifie la structure des fichiers de la base de données ou la fait passer à l’état copy-safe
.
La phrase ADD FILE
ajoute un fichier secondaire à la base de données.Pour le fichier secondaire, le chemin d’accès complet au fichier et le nom du fichier secondaire doivent être spécifiés.La description du fichier secondaire est la même que dans l’instruction CREATE DATABASE.
Dès que le fichier primaire ou secondaire précédent est rempli de 30 000 pages, le SGBD place les données dans le fichier secondaire test4.fdb.
ALTER DATABASE
ADD FILE 'D:\test.fdb4'
STARTING PAGE 30001;
La phrase ADD DIFFERENCE FILE
spécifie le chemin et le nom du fichier delta dans lequel seront écrites les modifications apportées à la base de données après l’avoir mise en mode copy-safe
(“copy-safe”). Cette déclaration n’ajoute pas réellement un fichier.Il remplace simplement le nom et le chemin du fichier delta silencieux.Pour modifier les paramètres existants, vous devez d’abord supprimer la description du fichier delta précédemment spécifiée à l’aide de l’opérateur DROP DIFFERENCE FILE, puis spécifier une nouvelle description du fichier delta.Si vous ne modifiez pas le chemin d’accès et le nom du fichier delta, il aura le même chemin d’accès et le même nom que la base de données, mais avec l’extension .delta.
Note
|
Si un chemin relatif ou un nom de fichier delta seulement est spécifié, il sera créé dans le répertoire actuel du serveur.Pour les systèmes d’exploitation Windows, il s’agit du répertoire système. |
La phrase DROP DIFFERENCE FILE
supprime la description (chemin et nom) du fichier delta donnée précédemment par la commande ADD DIFFERENCE FILE
.Cette déclaration ne supprime pas réellement le fichier.Il supprime le chemin d’accès et le nom du fichier delta et les valeurs par défaut seront utilisées lorsque la base de données sera ensuite configurée en mode safe copy
(i.e.le même chemin et le même nom que le fichier de la base de données, mais avec l’extension .delta).
ALTER DATABASE
ADD DIFFERENCE FILE 'D:\test.diff';
ALTER DATABASE
DROP DIFFERENCE FILE;
L’instruction `BEGIN BACKUP' est destinée à mettre la base de données en mode `copy-safe'. Cette instruction "gèle" le fichier principal de la base de données, ce qui permet d’effectuer une sauvegarde sûre en utilisant le système de fichiers, même si des utilisateurs sont connectés et effectuent des opérations sur les données.Toutes les modifications apportées par les utilisateurs à la base de données seront écrites dans un fichier séparé, appelé fichier delta (delta file).
Note
|
L’instruction `BEGIN BACKUP', malgré sa syntaxe, ne démarre pas une sauvegarde de base de données, mais crée seulement les conditions pour qu’elle ait lieu. |
La proposition FEND BACKUP
est conçue pour faire passer la base de données du mode copy-safe
au fonctionnement normal.Cette instruction fusionne le fichier delta avec le fichier principal de la base de données et rétablit le fonctionnement normal, ce qui ferme la possibilité de créer des sauvegardes sûres en utilisant le système de fichiers.(Une sauvegarde sûre utilisant l’utilitaire [app]``gbak'' reste disponible).
ALTER DATABASE
BEGIN BACKUP;
ALTER DATABASE
END BACKUP;
La phrase SET DEFAULT CHARACTER SET
modifie le jeu de caractères par défaut de la base de données.Ce changement n’affecte pas les données existantes.Le nouveau jeu de caractères par défaut ne sera utilisé que dans les commandes DDL suivantes, qui utiliseront en outre le tri par défaut pour le nouveau jeu de caractères.
ALTER DATABASE SET DEFAULT CHARACTER SET WIN1251;
Depuis Firebird 4.0, il est maintenant possible de spécifier les objets de métadonnées avec quels privilèges ils seront exécutés : appelant ou utilisateur définissant.Ceci est fait en utilisant l’option SQL SECURITY
, qui peut être spécifiée pour une table, un trigger, une procédure, une fonction ou un package.Si l’option INVOKER
est sélectionnée, l’objet de métadonnées sera exécuté avec les privilèges de l’utilisateur appelant.Si l’option DEFINER
est sélectionnée, l’objet de métadonnées sera exécuté avec les privilèges de l’utilisateur qui le définit (propriétaire). Si la clause SQL SECURITY
n’est pas spécifiée lors de la création d’un module ou d’une table PSQL, l’option INVOKER est utilisée par défaut.
La clause SET DEFAULT SQL SECURITY
modifie les privilèges d’exécution avec lesquels les modules PSQL (procédures stockées, fonctions et packages) sont exécutés par défaut.
Après avoir exécuté cette déclaration, les modules PSQL seront exécutés par défaut avec l’option `SQL SECURITY DEFINER'.
ALTER DATABASE SET DEFAULT SQL SECURITY DEFINER;
LINGER
La proposition SET LINGER
vous permet de définir un délai de fermeture de la base de données.Ce mécanisme permet à Firebird, en mode SuperServer, de garder la base de données ouverte pendant un certain temps après la fermeture de la dernière connexion.disposent d’un mécanisme de fermeture différée de la base de données.Cela peut contribuer à améliorer les performances et à réduire les coûts dans les cas où la base de données est fréquemment ouverte et fermée, tout en gardant les ressources "réchauffées" jusqu’à la prochaine ouverture.
Tip
|
Ce mode peut être utile pour les applications Web où la connexion à la base de données ne dure généralement que très peu de temps. |
La phrase DROP LINGER
supprime le délai et ramène la base de données à son état normal (sans délai). Cette commande équivaut à mettre le délai à 0.
Tip
|
La suppression de "LINGER" n’est pas la meilleure solution pour répondre au besoin temporaire de le désactiver pour une action ponctuelle qui nécessite de forcer un arrêt du serveur.L’utilitaire En outre, le remplacement ponctuel est également disponible via les services API, en utilisant le tag isc_spb_prp_nolinger, par exemple (dans une ligne comme celle-ci) :
|
ALTER DATABASE SET LINGER 30;
ALTER DATABASE DROP LINGER;
ou
ALTER DATABASE SET LINGER 0;
L’instruction ALTER DATABASE
avec la phrase ENCRYPT WITH
crypte la base de données avec le plugin de cryptage spécifié.Le chiffrement commence immédiatement après cette déclaration et s’exécute en arrière-plan.Le fonctionnement normal de la base de données n’est pas perturbé pendant le cryptage.
Note
|
Le processus de cryptage peut être surveillé en utilisant le champ
Par exemple, la requête suivante
affichera le pourcentage d’achèvement du processus de cryptage. |
La clause optionnelle KEY
permet de passer un nom de clé au plugin de cryptage.Le plugin décide de ce qu’il faut faire avec ce nom de clé.
L’instruction ALTER DATABASE
avec la clause DECRYPT
décrypte la base de données.
ALTER DATABASE ENCRYPT WITH DbCrypt;
ALTER DATABASE DECRYPT;
L’instruction ALTER DATABASE
avec la phrase ENABLE PUBLICATION
active la réplication de la base de données.
ALTER DATABASE ENABLE PUBLICATION
Pour désactiver la réplication de la base de données, exécutez l’opérateur
ALTER DATABASE DISABLE PUBLICATION
Les modifications seront appliquées dès que la transaction sera confirmée.
Un ensemble de réplication (ou publication) doit être défini lorsque la réplication est activée. Il comprend les tables à répliquer.Cela se fait également à l’aide de la commande DDL :
ALTER DATABASE INCLUDE {TABLE <table_list> | ALL} TO PUBLICATION <table_list> ::= tablename [, tablename ...]
Si le mot-clé ALL
est utilisé, le jeu de réplication inclura toutes les tables, y compris celles qui seront créées ultérieurement.La commande se présentera comme suit :
ALTER DATABASE INCLUDE ALL TO PUBLICATION
Vous pouvez spécifier un ensemble spécifique de tables pour la réplication.Pour ce faire, spécifiez une liste de tables séparées par des virgules après le mot-clé TABLE
.Dans l’exemple suivant, nous autorisons la réplication pour les tables t1 et t2 :
ALTER DATABASE INCLUDE TABLE t1, t2 TO PUBLICATION
L’opérateur suivant est utilisé pour exclure des tables d’un ensemble de réplication (publication) :
ALTER DATABASE EXCLUDE {TABLE <table_list> | ALL} FROM PUBLICATION <table_list> ::= tablename [, tablename ...]
L’utilisation du mot-clé ALL
exclura toutes les tables du jeu de réplication.Si toutes les tables ont été précédemment ajoutées à la publication à l’aide du mot-clé ALL, cet opérateur désactivera la publication automatique pour les tables nouvellement créées.La commande se présentera comme suit :
ALTER DATABASE EXCLUDE ALL FROM PUBLICATION
Vous pouvez spécifier un ensemble spécifique de tables à exclure de la réplication.Pour ce faire, spécifiez une liste de tables séparées par des virgules après le mot-clé TABLE.Dans l’exemple suivant, nous excluons les tables t1 et t2 du jeu de réplication :
ALTER DATABASE EXCLUDE TABLE t1, t2 FROM PUBLICATION
Les tables activées pour la réplication peuvent être davantage filtrées en utilisant deux paramètres dans le fichier de configuration replication.conf : include_filter
et exclude_filter
.Il s’agit d’expressions régulières qui sont appliquées aux noms de tables et définissent des règles pour inclure des tables dans le jeu de réplication ou les exclure du jeu de réplication.
Qui peut exécuter l’opérateur ALTER DATABASE
:
Propriétaire de la base de données ;
Utilisateurs avec le privilège `ALTER DATABASE'.
DROP DATABASE
Suppression de la base de données actuelle.
DSQL, ESQL
DROP DATABASE
L’instruction DROP DATABASE
supprime la base de données actuelle.Avant que la base de données soit supprimée, elle doit être jointe.L’opérateur supprime le primaire, tous les fichiers secondaires et tous les fichiers de la copie fantôme.
Qui peut exécuter l’opérateur DROP DATABASE
:
Propriétaire de la base de données ;
Utilisateurs avec le privilège `DROP DATABASE'.
Suppression de la base de données à laquelle le client est connecté.
DROP DATABASE;