Vous êtes sur la page 1sur 8

Rapport TP N°3

(Master 1 – IL- groupe01)

Nom :OUDJIANE
Prénom :LYNDA
Matricule :171731014883
Groupe :01
Question 01 : Connecter en tant que « System ». Lister le catalogue « DICT ». Il contient combien
d’instances ? Donner sa structure ?

o Lister le catalogue « DICT » : SELECT * FROM DICT ;


o Il contient combien d’instances : SELECT COUNT(*) FROM DICT;

o Donner sa structure : DESC DICT ;

Question 02 : Donner le rôle et la structure des tables (ou vues) suivantes : ALL_TAB_COLUMNS,

USER_USERS, ALL_CONSTRAINTS et USER_TAB_PRIVS.

o Le rôle de ALL_TAB_COLUMNS : DESC ALL_TAB_COLUMNS;

«Le rôle c'est d'afficher les informations sur tous les attributs des tables de tous les utilisateurs »
o Le rôle de USER_USERS : DESC USER_USERS;

« Le rôle c'est d'afficher toutes les informations du compte connecté »

o SELECT * FROM USER_USERS;

o Le rôle de ALL_CONSTRAINTS :DESC ALL_CONSTRAINTS;

« Le rôle c'est d'afficher toutes les contraintes des utilisateurs »


o Le rôle de USER_TAB_PRIVS : DESC USER_TAB_PRIVS;

« Le rôle c'est d'afficher les droits d’accès de l’utilisateur sur les tables »

Question 03 : Trouver le nom d’utilisateur avec lequel vous êtes connecté ?

La requête : SELECT USERNAME FROM USER_USERS;

Question 04 : Comparer la structure et le contenu des tables ALL_TAB_COLUMNS et USER_


TAB_COLUMNS ?

Pour les comparer on exécute les requêtes suivantes :

DESC ALL_TAB_COLUMNS;

SELECT * FROM ALL_TAB_COLUMNS;

SELECT COUNT(*) FROM ALL_TAB_COLUMNS; /* 73435*/

DESC USER_TAB_COLUMNS;

SELECT * FROM USER_TAB_COLUMNS;

SELECT COUNT(*) FROM USER_TAB_COLUMNS; /* 1713*/

SELECT COUNT(*) FROM ALL_TAB_COLUMNS WHERE OWNER=(SELECT USERNAME FROM


USER_USERS); /* 1713*/

« En exécutant ces différentes instructions on constate que USER_TAB_COLUMNS est seulement


pour l’utilisateur courant (l’utilisateur connecté), mais ALL_TAB_COLUMNS c’est pour tous les
utilisateurs »

Autrement dit :

La différence c'est : ALL_TAB_COLUMNS contient toutes les informations sur les tables de tous les
utilisateurs

Mais USER_TAB_COLUMNS contient sauf les informations sur les tables de l'utilisateur connecté
Question 05 : Vérifiez que les tables du TP1 ont été réellement créées ? Donner toutes les
informations sur ces tables ?

o Verification: SELECT TABLE_NAME FROM ALL_TABLES WHERE OWNER='DBAGYMNASE';

On voit que toutes les tables sont crée.

o Donner toutes les informations sur ces tables : SELECT TABLE_NAME, TABLESPACE_NAME,
SAMPLE_SIZE FROM ALL_TABLES WHERE OWNER='DBAGYMNASE';

Question 06 : Lister les tables de l’utilisateur « system » et celles de l’utilisateur DBAGYMNASE


(l’utilisateur de TP1).

o Lister les tables de l’utilisateur « system » : SELECT TABLE_NAME FROM ALL_TABLES WHERE
OWNER='SYSTEM';
o Lister les tables de l’utilisateur « DBAGYMNASE» : SELECT TABLE_NAME FROM ALL_TABLES
WHERE OWNER=' DBAGYMNASE ';
Question 07 : Donner la description des attributs des tables SPORTIFS et SEANCES (Exploiter la table

USER_TAB_COLUMNS).

Connecter avec DBAGYMNASE: et exécuter les requêtes:

o La table SPORTIFS : SELECT * FROM USER_TAB_COLUMNS WHERE TABLE_NAME='


SPORTIFS ';
o La table SEANCES : SELECT * FROM USER_TAB_COLUMNS WHERE TABLE_NAME='
SEANCES ';

Question 08 : Comment peut-on vérifie qu’il y a une référence de clé étrangère entre les tables
SPORTS et JOUER?

o Verification: SELECT * FROM ALL_CONSTRAINTS WHERE TABLE_NAME=' JOUER ' AND


CONSTRAINT_TYPE='R';

Question 09 : Donner toutes les contraintes créées lors du TP1 et les informations qui les caractérisent
(Exploitez la table USER_CONSTRAINTS);

SELECT * FROM USER_CONSTRAINTS;

« Les informations qui le caractérise : Nom, type, table d’accueil, statut, propriétaire… »

Question 10 : Retrouver toutes les informations permettant de recréer la table SEANCES.

o SELECT * FROM USER_TAB_COLUMNS WHERE TABLE_NAME=' SEANCES ';

o SELECT * FROM USER_CONSTRAINTS WHERE TABLE_NAME=' SEANCES ';

o SELECT * FROM USER_INDEXES WHERE TABLE_NAME=' SEANCES ';

Question 11 : Trouver tous les privilèges accordés à ADMINGYM.

Connecter avec l’utilisateur admingym pour ce connecté avec cet utilisateur faut lui accorder les
privilèges de connexion : grant create session to admingym;

SELECT * FROM USER_TAB_PRIVS;


SELECT * FROM SESSION_PRIVS;

Question 12 : Trouver les rôles donnés à l’utilisateur ADMINGYM.

SELECT * FROM SESSION_ROLES;

Question 13 : Trouver tous les objets appartenant à ADMINGYM.

SELECT * FROM USER_OBJECTS;

Question 14 : L’administrateur cherche le propriétaire de la table SPORTIFS, comment il pourra le


trouver ?

La requite: SELECT OWNER FROM ALL_TABLES WHERE TABLE_NAME=' SPORTIFS ';


Question 15 : Donner la taille en Ko de la table SPORTIFS.

SELECT BYTES/1024 AS TAILLE_EN_KO FROM USER_EXTENTS WHERE SEGMENT_NAME='


SPORTIFS ';

Question 16 : Vérifier l’effet produit par chacune des commandes de définition de données du TP1
sur le dictionnaire.(connecter avec l’utilisateur system)

REQUETE: SELECT TABLESPACE_NAME, BLOCK_SIZE, CONTENTS, LOGGING FROM


DBA_TABLESPACES WHERE TABLESPACE_NAME LIKE 'GYMNASE%';

REQUETE: SELECT * FROM ALL_USERS WHERE USERNAME='DBAGYMNASE';

REQUETE: SELECT GRANTEE, OWNER, TABLE_NAME, PRIVILEGE, GRANTABLE FROM


USER_TAB_PRIVS;

« La vérification des tables et des contraintes s’est faites dans les questions précédentes. »

Vous aimerez peut-être aussi