DB2 - Schémas

Ce chapitre présente et décrit le concept de schéma.

introduction

Un schéma est une collection d'objets nommés classés logiquement dans la base de données.

Dans une base de données, vous ne pouvez pas créer plusieurs objets de base de données avec le même nom. Pour ce faire, le schéma fournit un environnement de groupe. Vous pouvez créer plusieurs schémas dans une base de données et vous pouvez créer plusieurs objets de base de données avec le même nom, avec différents groupes de schémas.

Un schéma peut contenir des tables, des fonctions, des index, des tablespaces, des procédures, des déclencheurs, etc. Par exemple, vous créez deux schémas différents nommés «Professionnel» et «Personnel» pour une base de données «employé». Il est possible de créer deux tableaux différents avec le même nom «Employé». Dans cet environnement, une table contient des informations professionnelles et l'autre des informations personnelles sur l'employé. Bien que deux tables portent le même nom, elles ont deux schémas différents «Personnel» et «Professionnel». Par conséquent, l'utilisateur peut travailler avec les deux sans rencontrer de problème. Cette fonctionnalité est utile lorsqu'il existe des contraintes sur la dénomination des tables.

Voyons quelques commandes liées à Schema:

Obtenir le schéma actuellement actif

Syntax:

db2 get schema

Example: [Pour obtenir le schéma de base de données actuel]

db2 get schema

Définition d'un autre schéma sur l'environnement actuel

Syntax:

db2 set schema=<schema_name>

Example: [Pour organiser 'schema1' dans l'environnement d'instance actuel]

db2 set schema=schema1

Créer un nouveau schéma

Syntax: [Pour créer un nouveau schéma avec un ID utilisateur autorisé]

db2 create schema <schema_name> authroization <inst_user>

Example: [Pour créer le schéma «schema1» autorisé avec «db2inst2»]

db2 create schema schema1 authorization db2inst2

Exercice

Créons deux tables différentes avec le même nom mais deux schémas différents. Ici, vous créez une table des employés avec deux schémas différents, l'un pour les informations personnelles et l'autre pour les informations professionnelles.

Step 1: Créez deux schémas.

Schema 1: [Pour créer un schéma nommé professionnel]

db2 create schema professional authorization db2inst2

Schema 2: [Pour créer un schéma nommé personnel]

db2 create schema personal authorization db2inst2

Step 2: Créez deux tables avec le même nom pour les détails de l'employé

Table1: professionnel.employé

[Pour créer une nouvelle table «employé» dans la base de données en utilisant le nom de schéma «professionnel»]

db2 create table professional.employee(id number, name 
varchar(20), profession varchar(20), join_date date, 
salary number);

Table2: personal.employee

[Pour créer une nouvelle table «employé» dans la même base de données, avec le nom de schéma «personnel»]

db2 create table personal.employee(id number, name 
varchar(20), d_birth date, phone bigint, address 
varchar(200));

Après avoir exécuté ces étapes, vous obtenez deux tables avec le même nom «employé», avec deux schémas différents.