Les règles utilisées pour définir les noms de tables ou de colonnes.
Lors de la création d’une nouvelle table il est très important de suivre certaines règles.
Pour créer une table dans une base de donnée il faut tout abord avoir le droit de création, l’espace de stockage.
Ensuite il faut donner un nom à la table, donner à la colonne le nom, le type de donnée (numérique ou alphabétique) et la taille.
Voici une syntaxe de la création d’une table.
CREATE TABLE nom_table
Exemple:
CREATE TABLE DEPT
( deptno NUMBER(2),
dname VARCHAR2(14),
loc VARCHAR2(13)) ;
Les dénominations utilisées sont aléatoires.
Sur cet exemple on aura dans la colonne1 le nom deptno de type NUMBER avec comme taille 2 octets.
La colonne2 aura le nom dname avec une chaîne de caractères de taille maximum 14.
La colonne3 aura le nom loc avec une chaîne de caractères de taille maximum 13.
Les syntaxes pour les requêtes des données dans une table.
SELECT * FROM nom_table; (afficher le contenu d'une table)SELECT * FROM colonne1,colonne2; (afficher le contenu de la colonne1 et de la colonne 2)
SELECT column1,column2, ...
FROM nom_table; (afficher le contenu de la colonne1 et de la colonne 2 se trouvant dans la table nom_table)
SELECT column1,column2, ...
FROM nom_table
WHERE(condition) (afficher le contenu de la colonne1 et de la colonne 2 se trouvant dans la table nom_table avec condition)
SELECT DISTINCT type_objet
FROM nom_table; (afficher un objet bien distinct se trouvant dans la table nom_table)
SELECT column1
FROM nom_table
WHERE colonne1 LIKE "nom_reference"; (afficher le contenu de la colonne1 se trouvant dans la table nom_table avec le entre guillemet referenece)
NR. | TYPE DE DONNEE | DESCRIPTION |
1 | VARCHAR2 (size) | donnees de caracteres de longueur variable(une valeur maximale doit etre pricisee: le minimum est 1 et le maximum 4000) |
2 | CHAR (size) | Donnees de caracteres de longueur fixes(valeur minimum par defaut est 1 : maximum 2000) |
3 | NUMBER (p,s) | Nombre ayant la precision p et l’echelle s |
4 | DATE | Les valeurs en date et en temps |
5 | LONG | Donnees de caractere de longueur variable jusqu'à 2 gigaoctets |
6 | GLOB | Donnees de caracteres atteingnant les 4 gigabytes |
7 | RAW | données binaires de crues de taille de longueur(la taille maximum doit etre fixee. Le maximum est 2000) |
8 | BLOB | données binaires jusqu'à 4 gigaoctets |
9 | BFILE | magasin de données binaire dans un dossier externe jusqu'à 4 gigaoctets |
10 | ROWID | un numéro de la base 64 représentant l'adresse unique d'une rangée dans sa table |
Quelques applications sur la commande SELECT:
Utiliser les syntaxes pour les requêtes des données les tables EMP et DEPT
et executer les avec l'aide des fenêtres ci-dessous.
LES DATES (l'heure et le type)
Perfectionnement des dates avec l’oracle.
Les nouveaux types de date ont été introduisent ainsi que les perfectionnements ont
été faites sur l’heure zonale et locale
le tableau ci-dessous vous donne une idee sur les differents types de dates et leurs rôles.
NR. | TYPE DE DATE | DESCRIPTION |
1 | TIMESTAMP | Permet le stockage de l’heure comme date avec les secondes fractionnaires |
2 | INTERVAL YEAR TO MONTH | Permet le stockage de l’heure comme intervalle d’année et de mois. est utilise pour représenter la différence entre deux heures de valeurs différentes. |
3 | INTERVAL DAY TO SECOND | Permet le stockage de l’heure comme intervalle de jours a heures,minutes et seconde. |
La syntaxe : le rôle
TIMESTAMP [( fractional_seconds_precision )]
Cette commande vous permet d’ajouter dans une table creee, la date d’embauche d’un nouveau employe :
Dans l’exemple ci-dessous nous allons créer une table avec le nom ‘nouveau embauche’ avec une colonne ayant le nom ‘date_embauche’ de type TIMESTAMP avec une precision de ‘7’. Le chiffre par defaut est ‘6’
CREATE TABLE nouveau_ employe
(employe_id NUMBER,
nom VARCHAR2(15),
prenom VARCHAR2(15),
……….
Date_embauche TIMESTAMP(7),
…….) ;
pour afficher le resultat , on ecrit :
SELECT Date_embauche
FROM nouveau_embauche ;
Syntaxe pour differente option :
Exemple :
CREATE TABLE exemple _date
(order_date TIMESTAMP WITH LOCAL TIME ZONE);
INSERT INTO exemple_date VALUES(’31-DEC-00 09:38:29 AM’);
L’affichage:
SELECT *
FROM exemple_date;
Order_date
Création d’une table en utilisant des sous requêtes.
Cette methode consiste a créer les tables et inserer les rangees avec en combinant CREATE TABLE et l’option AS subquery Syntaxe :
CREATE TABLE nom_table
[(colonne, colonne…)]
AS subquery ;
Exemple :
CREATE TABLE dept90
AS
SELECT employe_id, nom,
Salaire*12 SALANN,
Hire_date
FROM employe
WHERE department_id = 90;
Utilisation de l’option ALTER TABLE.
Cette option est utilise pour:
-ajouter une nouvelle colonne.
-modifier une colonne existant
-définir une valeur par défaut de la nouvelle colonne
-enveler une colonne.
syntaxe :
ALTER TABLE nom_table
ADD (colonne type de donne [DEFAULT expr]
[, colonne type de donnee]…) ;
ALTER TABLE nom_table
MODIFY (colonne type de donne [DEFAULT expr]
[, colonne type de donnee]…) ;
ALTER TABLEnom_table
DROP (colonne) ;
Exemple :
ALTER TABLE dept90
ADD (job_id VARCHAR2(9)) ;
ALTER TABLE dept90
MODIFY (nom VARCHAR2(30));
ALTER TABLE dept90
DROP COLUMN job_id ;
ALTER TABLE dept90
MODIFY (nom VARCHAR2(30));
ALTER TABLE dept90
DROP COLUMN job_id ;
L’option SET UNUSED
Cette option sélectionne une ou plusieurs colonnes non utilisées, permettant ainsi leur suppression facile lorsque les ressources du système sont basses.
En utilisant cette option on ne libère pas d’espace dans la mémoire de l’ordinateur mais le temps en réponse est plus petite que si on exécute la clause DROP, dans ce contexte les colonnes UNUSED sont traitées comme-ci elles ont été enlevées. Ces colonnes ne seront pas affichées lors de l’utilisation de la requête SELECT *.
Par contre l’utilisation de DROP UNUSED COLUMN enleve de la table toutes les colonnes courantes selectionnees comme inutilisee. Cette option est mieux si l’on veut liberer de l’espace dans le disque dur.
Exemple :
ALTER TABLE dept90
SET UNUSED (nom);
ALTER TABLE dept90
DROP UNUSED COLUMNS;
Enlever une table
Cette option permet de supprimer une table avec tout son contenu. En ce momment toute les transaction avec cette table est interrompue
Exemple :
DROP TABLE dept90 ;
Changer le nom d’un objet
La requête RENAME est utilisée pour renommer une table, une vue, une sequence ou un synonyme. Mais avec la condition que vous soyez le propriétaire de l’objet que vous renommez..
Syntaxe :
RENAME ancien_nom TO nouveau_nom ;
Tronquer une table
Cette option permet d’enveler toutes les rangés d’une table et donner plus d’espace d’utilisation necessaire pour la table. Le colonnes enlevees ne sont plus remisent lorsqu’on utilise la requete TRUNCATE TABLE,
Exemple :
TRUNCATE TABLE detail_dept ;
Ajouter les commentaire a une table
COMMENT ON TABLE employe
IS ‘information sur l’employe’ ;
Cette option est utilisee pour mettre des commentaires a une table, une colonne, une vue.
Syntaxe :
COMMENT ON TABLE nom_table | COLUMN table.column
IS ‘le text a fficher’ ;
Capitolul precedent | Acasa | Capitolul urmator |