Dictionnaire de données
[45 min]
On souhaite créer la table EMPLOYEE de telle façon que le dictionnaire de données graphique d'Oracle affiche le tableau ci-dessous.
Question
Écrivez le code SQL pour créer cette table sous Oracle.
Solution
CREATE TABLE employee (
id NUMBER(7),
last_name VARCHAR2(25),
first_name VARCHAR2(25),
dept_id NUMBER(7)
);
Question
Question
Modifier la table EMPLOYEE pour pouvoir allonger les noms de famille des employés à 50 caractères. Vérifiez cette modification.
Solution
ALTER TABLE employee MODIFY(last_name VARCHAR2(50));
DESCRIBE EMPLOYEE
...
LAST_NAME VARCHAR2(50)
...
Question
Question
Ajouter une contrainte PRIMARY KEY de niveau de table dans la table EMPLOYEE en utilisant la colonne ID.
Solution
ALTER TABLE employee ADD CONSTRAINT employee_id_pk PRIMARY KEY (id);
Question
Vérifier que la contrainte a bien été ajoutée en utilisant la table USER_CONSTRAINTS ainsi que dans le mode graphique.
Solution
SELECT constraint_name, constraint_type
FROM user_constraints
WHERE table_name ='EMPLOYEE';
CONSTRAINT_NAME CONSTRAINT_TYPE
----------
EMPLOYEE_ID_PK PRIMARY KEY
Question
Rechercher les noms et types d'objets dans la vue USER_OBJECTS du dictionnaire de données correspondant à la table EMPLOYEE.
Solution
SELECT object_name, object_type
FROM user_objects
WHERE object_name LIKE 'EMPLOYEE%';
OBJECT_NAME OBJECT_TYPE
----------------
EMPLOYEE TABLE
EMPLOYEE_ID_PK INDEX
Question
Modifier la table EMPLOYEE. Ajouter une colonne SALARY de type NUMBER avec une précision 7.
Solution
ALTER TABLE employee ADD (salary NUMBER(7));
Question
Renommez la table EMPLOYEE en EMPLOYEE2.
Solution
RENAME employee TO employee2;
Question
Supprimez la table EMPLOYEE2.
Solution
DROP TABLE employee2;