Vidéo SQL ORACLE – 00 : Introduction aux objets d’une BD Oracle

Illustration du tutoriel SQL Oracle : Vidéo SQL ORACLE – 00 : Introduction aux objets d’une BD Oracle

Publicité

🧪 Envie de pratiquer ? Exécutez les exemples de cet article dans notre SQL Playground gratuit — aucun logiciel à installer.

Ce que couvre cette video

Une base de donnees Oracle ne se resume pas a des tables. Elle contient une dizaine de types d’objets, chacun avec un role precis. Comprendre qui fait quoi avant d’ecrire la moindre requete evite beaucoup de confusion par la suite. Voici le recapitulatif ecrit de la video, utilisable seul.

Les objets d’une base Oracle, en un tableau

ObjetA quoi il sertCommande de creation
TableStocke physiquement les donnees, en lignes et colonnesCREATE TABLE
VueRequete enregistree qui s’utilise comme une table ; ne stocke rienCREATE VIEW
IndexAccelere la recherche sur une ou plusieurs colonnesCREATE INDEX
SequenceGenerateur de nombres uniques, pour les identifiantsCREATE SEQUENCE
SynonymeAlias vers un autre objet, souvent d’un autre schemaCREATE SYNONYM
ProcedureBloc PL/SQL nomme qui execute des actionsCREATE PROCEDURE
FonctionComme une procedure, mais retourne une valeurCREATE FUNCTION
PackageRegroupe procedures et fonctions lieesCREATE PACKAGE
TriggerCode declenche automatiquement sur INSERT/UPDATE/DELETECREATE TRIGGER
ContrainteRegle qui garantit la coherence des donneesALTER TABLE ... ADD CONSTRAINT

Table et vue : la distinction a retenir

C’est la confusion la plus frequente chez les debutants. Une table occupe de l’espace disque et contient les donnees. Une vue ne contient rien : c’est une requete SELECT a laquelle on a donne un nom. Interroger une vue reexecute sa requete a chaque fois.

-- La vue ne stocke aucune donnee
CREATE VIEW V_EMP_DEPT10 AS
SELECT EMPNO, ENAME, SAL
  FROM EMP
 WHERE DEPTNO = 10;

-- Elle s'interroge ensuite comme une table
SELECT * FROM V_EMP_DEPT10;

Interet : masquer la complexite d’une jointure, et restreindre l’acces a certaines lignes ou colonnes sans dupliquer les donnees.

Le schema : le proprietaire des objets

Chaque objet appartient a un schema, qui porte le nom de l’utilisateur qui l’a cree. C’est pour cela qu’on ecrit parfois SCOTT.EMP : le schema SCOTT, la table EMP. Sans prefixe, Oracle cherche dans votre propre schema.

-- Lister vos propres objets
SELECT OBJECT_NAME, OBJECT_TYPE
  FROM USER_OBJECTS
 ORDER BY OBJECT_TYPE, OBJECT_NAME;

-- Lister tout ce a quoi vous avez acces
SELECT OWNER, OBJECT_NAME, OBJECT_TYPE
  FROM ALL_OBJECTS
 WHERE OWNER = 'SCOTT';

Les vues systeme suivent toujours la meme logique de prefixe : USER_ (a moi), ALL_ (ce que je peux voir), DBA_ (tout, reserve aux administrateurs).

Sur le même thème

Un nouveau tutoriel SQL par semaine

Nous ne spammons pas ! Consultez notre politique de confidentialité pour plus d’informations.

Publicité

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Cours SQL & Oracle — 100% gratuitVoir les cours →