Documente Academic
Documente Profesional
Documente Cultură
Notes pr eliminaires
La plupart des s eances de TP se d eroulent sous SQL*PLUS Sauvegardez une trace de votre travail dans un document TXT en ex ecutant au d ebut de chaque s eance la commande spool nomF ichier.txt sous SQL*PLUS. Cette commande permet de garder une copie des sorties ecran dans le chier nomF ichier. SQL*PLUS poss` ede de nombreuses commandes pour mettre en forme les sorties ecran des SELECT. Utilisez la commande COLUMN...FORMAT... pour donner la largeur des colonnes des SELECT pour quelles ne soient pas trop larges. Exemples : Largeur de 12 caract` eres pour la colonne table name : COLUMN table name FORMAT A12 Largeur de 5 positions num eriques pour la colonne bytes : COLUMN bytes FORMAT 99999 Utilisez la commande DESCRIBE nomT able (ou nomV ue) pour acher la liste des attributs de nomT able (de nomV ue) SQL> describe dictionary; Nom NULL ? Type ------------ ------- --------------TABLE NAME VARCHAR2(30) COMMENTS VARCHAR2(4000)
Khaled Jouini c
1/5
Exercices
Gestion du remplissage des blocs
1. Cr eez les tables EM P et DEP T ci-dessous. EMP(EMPNO : NUMBER, ENAME : VARCHAR, EADR : VARCHAR, DEPTNO : NUMBER) DEPT(DEPTNO : NUMBER, DNAME VARCHAR, LOC VARCHAR)
2. Le dictionnaire de donn ees est un ensemble de vues et de tables acc ed ees en lecture seule, cr e ees et maintenues par le syst` eme et contenant toutes les informations de toutes les composantes logiques et physiques du serveur de base de donn ees. Parmi les vues du dictionnaire, user tables est celle qui permet de consulter les informations sur les tables poss ed ees par un utilisateur donn ee. 1. Utilisez la commande DESCRIBE pour lister les attributs de la vue user tables 2. Donnez la requ ete SQL permettant dacher pour les tables EM P et DEP T les valeurs par d efaut de PCTFREE et de PCTUSED
3. Modiez les valeurs par d efaut des param` etres PCTFREE et PCTUSED des tables EM P et DEP T en tenant compte des indications suivantes. 1. Lensemble des mises ` a jour augmentent la taille des tuples de la table EM P de 20% et de la table DEP T de 5% en moyenne par rapport ` a leurs tailles initiales . 2. Pour un bloc stockant des tuples de la table EM P , il nest pas souhait e que plus de 60% de lespace du bloc soit inutilis e 3. En supposant que la taille initiale dun tuple de la table DEP T corresponde ` a 1% de celle dun bloc, il est souhait e que lorsque les insertions sont interdites au niveau dun bloc, celles-ci sont autoris ees ` a nouveau au bout de la suppression de 10 tuples en moyenne. 4. Modiez la valeur de PCTFREE et de PCTUSED de la table EM P , en supposant que les mises-` a-jour doublent la taille des tuples de cette table et que les insertions ne sont autoris ees ` a nouveau dans un bloc que si trois-quarts des tuples qui y apparaissent PCTFREE gale la moiti de PCTUSED ont et e supprim es.
Khaled Jouini c
2/5
Khaled Jouini c
3/5
7. Les principaux attributs de la vue sys.dba segments sont r esum es dans le tableau ci-dessous Attribut segment name owner segment type tablespace name size blocks extents buffer pool Signication Nom du segment Nom de lutilisateur propri etaire du segment Type du segment Nom du tablespace contenant le segment Taille du segment en octets Taille du segment en nombre de block Oracle Nombre dextension composant le segment Tampon m emoire par d efaut utilis e pour garder en m emoire vive les blocs du segment
Ex ecutez la requ ete suivante et expliquez son r esultat : SELECT segment name, segment type, owner FROM sys.dba segments WHERE tablespace name = TS EMP;
D esactivation de la journalisation
10. D esactivez la journalisation des ev enements dans le tablespace T S EM P
4/5
4. Remise du tablespace en ligne En suivant la proc edure d ecrite ci-dessus, renommez le chier f 3.dbf du tablespace T S EM P
Donnez la requ ete SQL permettant de trouver pour le tablespace SYSTEM, le nombre maximal de blocs contigus libres, le nombre minimal de blocs contigus libres, la taille totale en kilo octets de lespace libre et le nombre total de suites de blocs libres contigus (fragmentation de lespace libre).
14. Ex ecutez la requ ete suivante et expliquez son r esultat : SELECT segment name, segment type, owner FROM sys.dba segments WHERE tablespace name = TS EMP;
Khaled Jouini c
5/5