Vous êtes sur la page 1sur 53

Qui ce qu'une base de données ?

Une base de données est un ensemble d'informations qui est organisé de manière


à être facilement accessible, géré et mis à jour. Elle est utilisée par les organisations
comme méthode de stockage, de gestion et de récupération de l'informations.

Qu'est-ce qu'un logiciel de base de données ?


L'essentiel à savoir un système de base de données

Un système de gestion de base de données (SGBD) est le logiciel qui permet à un


ordinateur de stocker, récupérer, ajouter, supprimer et modifier des données. ... Un
SGBD définit ce qu'on appelle le schéma de données ou la structure dans laquelle
les données sont stockées.

Oracle Database est un système de gestion de base de données relationnelle (SGBDR) qui


depuis l'introduction du support du modèle objet dans sa version 8 peut être aussi qualifié
de système de gestion de base de données relationnel-objet (SGBDRO). Fourni par Oracle
Corporation, il a été développé par Larry Ellison, accompagné entre autres, de Bob Miner et Ed
Oates.

Historique
Software Development Laboratories a été créé en 1977. En 1979, l'entreprise change de nom en
devenant Relational Software, Inc. (RSI) et introduit son produit Oracle V2 comme base de
données relationnelle. La version 2 ne supportait pas les transactions mais implémentait les
fonctionnalités SQL basiques de requête et jointure. Il n'y a jamais eu de version 1, pour des
raisons de marketing, la première version a été la version 2. Celle-ci fonctionnait uniquement sur
les systèmes Digital VAX/VMS.
En 1983, RSI devient Oracle Corporation pour être plus représentative de son produit phare. La
version 3 d'Oracle, entièrement ré-écrite en langage de programmation C, est publiée. Celle-ci
supportait les transactions grâce aux fonctionnalités de commit et rollback. C'est aussi à partir de
cette version que la plate-forme Unix est supportée.
En 1984, la version 4 supporte la cohérence en lecture (read consistency).
En 1985, la version 5 supporte les requêtes distribuées, dans le cadre de l'intégration du
modèle client-serveur avec l'arrivée des réseaux au milieu des années 1980.
En 1988, la version 6 supporte le PL/SQL, le verrouillage de lignes (row-level locking) et les
sauvegardes à chaud (hot backups, lorsque la base de données est ouverte). Oracle met sur le
marché son ERP Oracle Financials basé sur la base de données relationnelle Oracle Database.
En 1992, la version 7 supporte les contraintes d'intégrité, les procédures stockées et
les déclencheurs (triggers).

1
En 1995, acquisition d'un puissant moteur multidimensionnel, commercialisé sous le nom
d'Oracle Express.
En 1997, la version 8 introduit le développement orienté objet, et les
applications multimédia grâce aux services Oracle interMedia2, renommé Oracle
Multimedia (en) depuis la version 11g3.
En 1999, la version 8i d'Oracle est publiée dans le but d'affiner ses applications
avec Internet (le i fait référence à Internet). La base de données comporte nativement
une machine virtuelle Java.
En 2001, la version 9i ajoute 400 nouvelles fonctionnalités et permet de lire et d'écrire des
documents XML. Elle intègre le moteur OLAP : le moteur Oracle Express est dorénavant
référencé au sein de l'option Oracle OLAP. Les données multidimensionnelles sont accessibles à
partir du langage SQL.
En 2003, la version 10g supporte les expressions rationnelles. Le g signifie grid ; un des atouts
marketing de la 10g est en effet qu'elle supporte le grid computing.
En novembre 2005, la version 10g Express Edition, complètement gratuite, est publiée, ainsi que
la version 10g Release 2.
En juillet 2007, la version 11g Linux et Windows.
En septembre 2009, la version 11g Release 2 est publiée 4.
En juillet 2013, la version 12c est publiée5
En 2017, la version 12c release 2 (12.2.0.1) est publiée.
En 2018, la version 18c est publiée, il s'agit de la version 12.2.0.2 mais avec la nouvelle
convention de version.
En 2019, la version 19c est publiée.

2
Pourquoi je dois choisir Oracle ?
Oracle reports et Oracle Graphics permettent de faire le point sur les différents états de l'entreprise
(Financier, Ressources humaines), et de créer des graphiques dynamiques qui permettent de mettre à
disposition des statistiques en temps réel. En plus de ses avantages qualitatifs, Oracle db peut vanter
sa gratuité.

Les fonctionnalités d'Oracle

Oracle est un SGBD permettant d'assurer :

 La définition et la manipulation des données


 La cohérence des données
 La confidentialité des données
 L'intégrité des données
 La sauvegarde et la restauration des données
 La gestion des accès concurrents

Les composants d'Oracle

Outre la base de données, la solution Oracle est un véritable


environnement de travail constitué de nombreux logiciels permettant notamment
une administration graphique d'Oracle, de s'interfacer avec des produits divers et d'assistants de
création
de bases de données et de configuration de celles-ci.

On peut classer les outils d'Oracle selon diverses catégories :

 Les outils d'administration


 Les outils de développement
 Les outils de communication
 Les outils de génie logiciel
 Les outils d'aide à la décision

Les outils d'administration d'Oracle

Oracle est fourni avec de nombreux outils permettant de simplifier l'administration de la


base de données. Parmi ces outils, les plus connus sont :

 Oracle Manager (SQL*DBA)


 NetWork Manager
 Oracle Enterprise Manager
 Import/Export : un outil permettant d'échanger des données entre deux bases Oracle

Outils de développement d'Oracle

Oracle propose également de nombreux outils de développement permettant


d'automatiser la création d'applications s'interfaçant avec la base de données.
Ces outils de développement sont :

 Oracle Designer
 Oracle Developer

3
 SQL*Plus : une interface interactive permettant d'envoyer des requêtes SQL et PL/SQL à la base
de données. SQL*Plus permet
notamment de paramétrer l'environnement de travail (formatage des résultats, longueur d'une ligne,
nombre de lignes par page, ...)

 Oracle Developper : il s'agit d'une suite de produits destinés à la conception et à la création


d'applications client-serveur. Il est composé de 4 applications :
 Oracle Forms (anciennement SQL*Forms) : un outil permettant d'interroger la base de
données de façon graphique sans connaissances préalables du langage SQL. SQL*Forms
permet ainsi de développer des applications graphiques (fenêtres, formulaires, ...)
permettant de sélectionner, modifier et supprimer des données dans la base.
 Oracle Reports (SQL*ReportWriter) : un outil permettant de réaliser des états
 Oracle Graphics : un outil de génération automatique de graphiques dynamiques pour
présenter graphiquement des statistiques réalisées à partir des données de la base
 Procedure Builder : un outil permettant de développer des procédures, des fonctions et des
packages

Outils de programmation

Oracle dispose d'un grand nombre d'interfaces (API) permettant à des programmes écrits dans divers
langages
de s'interfacer avec la base de données en envoyant des requêtes SQL. Ces interfaces (appelées
précompilateurs)
forment une famille dont le nom commence par PRO* :

 Pro*C
 Pro*Cobol
 Pro*Fortran
 Pro*Pascal
 Pro*PLI

Oracle SQL Developer


Description
Oracle SQL Developer est un environnement de développement intégré multi-plateforme, fourni
gratuitement par Oracle Corporation et utilisant la technologie Java. C'est un outil graphique
permettant d'interroger des bases de données Oracle à l'aide du langage SQL. 

Oracle SQL Developer est l’IDE d’Oracle Database

Une interface utilisateur graphique gratuite, Oracle SQL Developer, permet aux utilisateurs et aux
administrateurs de base de données d’effectuer leurs tâches de base de données en moins de clics et
de frappes. L’objectif principal de l’outil de productivité SQL Developer est d’aider l’utilisateur final à
gagner du temps et à optimiser le retour sur investissement dans la pile technologique d’Oracle
Database.

SQL Developer prend en charge Oracle Database 10g, 11g et 12c et s’exécute sur tout système
d’exploitation prenant en charge Java.

4
Pour le développeur

SQL Developer fournit des éditeurs puissants pour travailler avec SQL, PL/SQL, les procédures Java
stockées et XML. Exécutez des requêtes, générez des plans d’exécution, exportez des données au
format souhaité (XML, Excel, HTML, PDF, etc.), exécutez, déboguez, testez et documentez vos
programmes de base de données, et bien plus encore avec SQL Developer.

Pour l’administrateur de bases de données

SQL Develper n’est pas réservé aux développeurs ! Depuis la version 3.0, le panneau
d’administrateur de bases de données (disponible dans le menu Affichage) propose aux
administrateurs de bases de données un ensemble d’interfaces pour leurs tâches les plus critiques.
SQL Developer continue d’ajouter et d’améliorer les fonctionnalités à destination des administrateurs
de bases de données. Aujourd’hui, le panneau d’administrateur de bases de données de SQL
Developer prend en charge les éléments suivants :

 Data Pump
 Recovery Manager (RMAN)
 Audit Oracle
 Gestion des utilisateurs et des rôles
 Gestion du stockage, y compris la possibilité d’ajouter de l’espace à vos tablespaces
 Resource Manager
 Fonctionnalités du pack de diagnostic :
o Instantanés
o Plans de départ
o ADDM
o ASH
o AWR
Pour l’architecte d’application et Data Modeler

Oracle SQL Developer comprend une solution complète de modélisation de données avec Oracle
SQL Developer Data Modeler (SDDM) fonctionnant à l’intérieur de l’application (également disponible
en tant qu’installation autonome et gratuite.) SDDM prend en charge les éléments suivants :

 Modélisation logique, relationnelle, physique, dimensionnelle


 Diagrammes de flux de données
 Scripts DDL
 Importation à partir de dictionnaires de données, de scripts DDL, de référentiels Oracle Designer et
d’ERwin
 un référentiel de reporting
 Gestion des versions de vos designs via Subversion
 Comparaison de modèles avec génération de scripts ALTER
 puissant utilitaire de recherche et de reporting

5
Pour le développeur et l’administrateur d’applications Web

Oracle SQL Developer permet d’administrer Oracle REST Data Services et de créer et de modifier les
services RESTful.

Oracle SQL Developer s’intègre à Oracle APEX, ce qui permet de parcourir les applications et
d’effectuer d’autres activités Application Express. Grâce à Oracle SQL Developer, vous pouvez
parcourir, exporter et importer, supprimer ou déployer des applications. Une sélection de rapports
Application Express est proposée et vous pouvez créer vos propres rapports personnalisés.

Migrations de bases de données tierces

Autrefois disponible dans Migration Workbench, Oracle SQL Developer est désormais la principale
plateforme de migration pour déplacer vos bases de données tierces vers Oracle Database. Les
utilisateurs peuvent se connecter à Access, SQL Server, Sybase ASE, DB2 ou Teradata et parcourir
un processus piloté par un assistant pour déplacer leurs objets, données et applications vers Oracle.

Captures d’écran des principales fonctionnalités

Voici une synthèse de diverses fonctionnalités de SQL Developer. Cliquez sur la vignette pour afficher
une image en taille réelle.

6
1. Créer des connexions

7
 Créer et tester des connexions
o pour plusieurs bases de données
o pour plusieurs schémas

 Stocker les connexions utilisées fréquemment

 Importer et exporter des connexions

 Stocker le mot de passe ou être invité à la connexion

 Importer les détails de connexion à partir de tnsnames.ora

 Prise en charge de LDAP, Kerberos, authentification externe et utilisateurs proxy

 Connexions de groupe dans des dossiers

 Option avancée pour identifier l’URL de connexion à partir de Java

 Connexions pour TimesTen, MySQL, Microsoft SQL Server, Microsoft Access, Sybase, Teradata et
IBM DB2
o Une liste complète des certifications est disponible
SQL Developer prend entièrement en charge les connexions à Oracle 10g et versions ultérieures.

Les utilisateurs peuvent créer des connexions à des bases de données pour des bases de données
non Oracle MySQL, Microsoft SQL Server, Microsoft Access, Sybase, Teradata et IBM DB2 pour la
navigation dans les objets et les données. Des capacités de feuille de calcul limitées sont également
disponibles pour ces bases de données.

8
2. Parcourir les objets

9
10
 Navigateur d’objets basé sur l’arborescence

 Prise en charge des objets communs


o Tableaux, vues, index
o Packages, procédures, fonctions, déclencheurs
o Types
o Séquences
o Vues et journaux matérialisés
o Synonymes (publics et privés)
o Liens de base de données
o Répertoires
o Schémas XML
o Tables et files d’attente
o Java
o Tâches
o Corbeille (10g et plus)
o Autres utilisateurs

 Affichage par onglets des détails spécifiques à chaque type d’objet


Les objets sont regroupés par type. Pour chaque type d’objet, un filtre peut être appliqué pour
restreindre l’affichage.

11
3. Créer des objets

12
 Créer des boîtes de dialogue pour chaque type d’objet pris en charge

 Prise en charge de :


o Tables externes
o Tables d’index organisées
o Tables temporaires
o Tables partitionnées (plage, hachage et liste)

 Prend en charge les caractères à casse mixte et multi-octets


Lors de la création d’une table, les utilisateurs peuvent spécifier des séquences et des déclencheurs
avant insertion pour remplir une colonne avec des valeurs.

13
4. Modifier des objets

 Boîtes de dialogue spécifiques à l’action pour la modification, par exemple,


o Table > Renommer
o Colonne > Ajouter
o Vue > Compiler
o Indice > Recréer

14
o Procédure > Déboguer
o Déclencheur > Désactiver
o Séquence > Supprimer
o Vue matérialisée > Changer le parallélisme
o Synonyme > Supprimer
o Lien de base de données > Tester
o Corbeille > Purger
La plupart des objets ont une boîte de dialogue d’édition générale ainsi que des modifications
spécifiques disponibles en appelant un menu contextuel par un clic droit.

15
5. Interroger et mettre à jour les données

16
17
18
 Parcourir les données de la grille de table
o trier
o filtrer
o mettre en surbrillance
o gérer les colonnes (masquer et afficher)
o ligne en double
o vue d’enregistrement unique

 Insérer, mettre à jour et supprimer des données

 Prise en charge des CLOB et des BLOB

 Colonnes à ajustement automatique

 Suivre les modifications des données via le journal des messages

 Visual Query Builder


Utilisez le Générateur de requêtes pour créer rapidement des requêtes SQL par glisser-déposer, pour
sélectionner des tables et cliquer avec la souris pour sélectionner des colonnes.

19
6. Exporter des données et DDL, importer des données

20
21
 Exporter des données vers
o XML
o csv
o SQL Insert
o SQL Loader
o texte
o HTML
o XLS

 Restreindre les colonnes

 Ajouter une clause where

 Exporter DDL
o sélectionner plusieurs types d’objet
o sélectionner plusieurs objets

 EXPORT DDL et assistant de données

 Importer des données de


o XLS, CVS

 Importer des données et créer une table


Exportation de données disponible à partir de n’importe quelle grille de données. Cela comprend
Table > Données, résultats de feuille de calcul SQL et sortie de rapport.

22
7. Copie et comparaison de schémas

23
24
 Copie de schéma
o Copier le contenu d’un schéma dans un autre
o Déposer, tronquer ou copier des objets
o Créer un rapport de résultats

 Comparaison de schémas
o Comparer et créer une instruction SQL Difference entre 2 schémas
o Sélectionner les objets à comparer
o Liste des différences et code SQL à exécuter
o Exécuter la sortie du script vers la feuille de calcul SQL à exécuter sur la connexion de votre
choix

25
8. Commandes de processus

26
27
 Mise en évidence de la syntaxe

 Aperçu du code

 Aperçu des alias de table

 Exécution d’instructions uniques

 Exécution de script

 Formatage du code

 Historique de commande

 Expliquer le plan

 Sortie HTP et OWA

 Prise en charge des variables de liaison

 Glisser-déposer dans votre SQL


o Extraits
o Tables/Vues matérialisées (transfert de l’instruction select complète)
o Fonctions procédures (transfert de la liste complète des paramètres)
o Tous les autres objets de Connexions
o SQL des rapports
Tous les fichiers sont ouverts dans une feuille de calcul SQL. L’utilisateur sélectionne simplement la
connexion adaptée dans la liste en haut à droite et peut modifier, exécuter et enregistrer.

28
9. Modifier le code PL/SQL

29
 Éditeur de fonctions complètes

 Visionneuse d’extraits de code

 Formateur de code

 Mise en évidence de la syntaxe

 Code Insight (saisie semi-automatique)

 Pliage de code

 Reporting d’erreurs en ligne

 Signets de code

 Touches rapides personnalisables

 Visionneuse d’extraits de code personnalisable

 Edition PL/SQL basée sur des fichiers


Tous les fichiers .pks, .pkb et .pls sont ouverts dans un éditeur de code PL/SQL. Les utilisateurs
peuvent modifier, utiliser des extraits, compiler et enregistrer ces fichiers.
10. Exécuter et déboguer PL/SQL

 Exécuter des procédures, des fonctions et des packages


o DBMS_OUTPUT
o Valeurs retournées par la fonction

30
o Paramètres OUT

 Boîte de dialogue Exécuter PL/SQL


o Spécifier la cible d’exécution
o Affiche les informations sur les paramètres
o Génère un bloc PL/SQL modifiable pour renseigner les paramètres

 Débogueur pleinement fonctionnel


o Contrôler l’exécution d’un programme (Step into, over, ...)
o Inspecter et modifier les variables
o Configurer les conditions de point d’arrêt

31
11. Exécuter et créer des rapports

32
33
 Suite de rapports
o Dictionnaire de données
o DBA
o Surveillance
o Rechercher PL/SQL
o Sécurité

 Application Express

 Data Modeler

 Migration

 Défini par l’utilisateur


o Tableau de base
o Master-detail
o Graphiques
o Jauges
o HTML
o Explorer
o Script
La plupart des rapports fournis incluent le clic.. Si un utilisateur clique sur une ligne résultante, la
définition de l’objet dans cette ligne s’affiche. Le code SQL de tout rapport peut également être extrait
dans une feuille de calcul, modifié puis stocké dans votre propre rapport personnalisé.

34
12. Tests unitaires PL/SQL

35
 Créer un test

 Ajouter une suite de tests

 Créer une implémentation de test

 Accès multi-utilisateurs basé sur le référentiel

 Exécuter des rapports de test

 Composants de bibliothèque réutilisables


Les objets sont regroupés par type. Pour chaque type d’objet, un filtre peut être appliqué pour
restreindre l’affichage.

36
13. Visionneuse Data Modeler

37
38
 Data Modeler en lecture seule

 Ouvrir et parcourir des modèles de données logiques et relationnels

 Glisser-déposer de tables pour créer des diagrammes

 Parcourir des domaines, des informations commerciales et des données de modèle de processus

 Accès en lecture seule pour


o domaines
o informations commerciales
o données de modèle de processus

39
14. Migrer à partir de bases de données tierces

40
 Créer des connexions à la base de données pour
o MySQL
o Microsoft SQL Server
o Microsoft Access
o Sybase
o IBM DB2
o Teradata

 Parcourir les bases de données tierces

 Migration rapide

 Migration des moindres privilèges

 Migration pas à pas


o Capturer un modèle tiers
o Convertir en modèle Oracle
o Générer un script DDL
o Exécuter DDL
o Migrer les données vers Oracle

 Migration avancée

 La migration d’objets complexes prend en charge les procédures stockées, les déclencheurs et les
vues
 Translation Scratch Editor

 Translation Difference Viewer

41
15. Contrôle de version

42
 Intégré avec SQL Developer

 Prise en charge de CVS, Subversion, Serena Dimensions et Perforce

 Extraire des fichiers

 Valider la copie de travail

 Comparer et fusionner des fichiers

 Importer des fichiers

 Historique des versions

43
16. Examiner l’IDE robuste

44
 Composants multiples
o Connexions
o Rapports
o Feuille de calcul SQL
o Extraits (glisser-déposer dans le code)

 Arrêt sur vue

 Fenêtres ancrables

 Écran divisé

 Préférences
o Validation automatique avec la feuille de calcul SQL
o Définir les touches accélératrices
o Afficher les numéros de ligne
o Taille de l’onglet

 Vérifier la disponibilité de mises à jour


o Pilotes tiers
o pour ajouter des extensions CVS, Serena Dimensions et Perforce

 Extensible
SQL Developer exploite l’IDE JDeveloper. Cela donne aux développeurs la possibilité d’écrire des
extensions.

45
Modèle relationnel de bases de données Oracle

46
Exemples de codes avec Oracle Developer

47
4- Vue d'ensemble sur Database LearningSQL

Le LearningSQL est une base de données qui stimule la base de données d'une banque.

Nom de la table Signification

ACCOUNT La table enregistre les comptes bancaires. Chacun des clients peut enregistrer plusieurs comptes dont chacun correspond à un
type de produit fourni par la banque.
(Voir plus: PRODUCT)

ACC_TRANSACTIO La table enregistre l'historique des transactions entre la banque et un certain compte.
N

BRANCH La branche, la succursale de la banque

BUSSINESS

CUSTOMER La table des clients

DEPARTMENT La table des département de la banque

EMPLOYEE La table des employés de la banque

OFFICER

PRODUCT Des produits de la banques, par exemple:


Compte épargne
Les métiers du crédit
Les prêts aux petites entreprises
.....

PRODUCT_TYPE Des types de services bancaires:


Le compte bancaires des clients
Prêts aux particuliers et aux entreprises
Le fournisseur d'assurance

48
5.1- ACCOUNT

5.2- ACC_TRANSACTION

49
5.3- BRANCH

5.4- BUSINESS

50
5.5- CUSTOMER

5.6- DEPARTMENT

51
5.7- EMPLOYEE

5.8- INDIVIDUAL

52
5.9- OFFICER

5.10- PRODUCT

5.11- PRODUCT_TYPE

53

Vous aimerez peut-être aussi