Upload
fatima-zahra-fagroud
View
107
Download
2
Embed Size (px)
Citation preview
LES INTERFACES /CONTRÔLEDE BASE DE DONNÉE
réalisé par : Guebba SaraFagroud Fatima ZahraNaji ZakariaMoudden Abderazak
Encadré par : Mr Hanoun Mustapha
1
Plan interfaces d’une base de donnée
le langage SQL
Décrire la structure des tables
Utilisation de SQL(manipuler les données …)
SQL*plus et iSQL *Plus
2
Le plsql
Plan Contrôleer une base de donnée
Gérer l’instance oracle
Gérer le processus d’écoute Oracle
3
4
Interfaces d’une base de donnée
Structured Query Language (SQL) ◦ Langage informatique standard et normalisé
destiné à interroger ou manipuler une base de données relationnelle
Langage SQL
5
Il existe plusieurs moyens d'envoyer des commandes SQL à la base de données parmi lesquels:
Outils du langage SQL
6
Oracle SQL*Plus et Oracle iSQL*Plus :◦ une interface graphique et web de ligne de
commande permet d’interagir simplement avec la base de donnée
Oracle Forms : ◦ masque le code SQL et offre un environnement
graphique afin de manipuler les données Oracle Enterprise Manager:
◦ On a pas besoin d'écrire les instructions SQL utilisées pour administrer la base de données mais on peut afficher le code SQL généré
Outils du langage sql
7
SQL*Plus est un utilitaire en ligne de commande d'Oracle
Il est principalement distribué avec le produit Oracle Database.
SQL*Plus
8
1.Ouvrez une fenêtre de terminal. 2 .Entrez connect 3 .Entrez le nom d'utilisateur et le mot de passe
de l’utilisateur
La procédure de démarrage de SQL*Plus
9
"iSQL*Plus" est une interface graphiqe fournissant un accès via web.
Voici les urls à utiliser :◦ "http://hostname:port/isqlplus" ◦ "http://hostname:port/isqlplus/dba"
iSQL*Plus
10
Pour pouvoir utiliser l'interface iSQL*Plus, le processus correspondant côté serveur doit être démarré avec la commande isqlplusctl start
"5560" est le port HTTP de iSQL*Plus. Vérifiez-le dans le fichier
"$ORACLE_HOME/install/portlist.ini"
iSQL*Plus
11
Après l’accés au URL la page login s’affiche
Accéder à iSQL*plus
12
Username :◦ Entrez un nom utilisateur valide pour la connexion
à Oracle Database (obligatoire). Password :
◦ Saisissez un mot de passe valide pour l'utilisateur indiqué (obligatoire).
Accéder à iSQl*Plus
13
Connection Identifier:◦ Pour utiliser la base de données Oracle par
défaut, laissez ce champ vide◦ saisissez l'identificateur de connexion de la base
de données à laquelle vous voulez vous connecter◦ [//]host[:port][/[service_name]]
Cliquez sur Login afin de vous connecter à la base de données.
Accéder à iSQL*Plus
14
L'espace de travail iSQL*Plus s'affiche dans le navigateur Web.
Espace de travail iSQL*Plus
15
A partir de cet espace, vous pouvez :Entrer, exécuter et annuler des scriptsCharger et enregistrer des scriptsVisualiser, enregistrer et imprimer une sortieAccéder aux écrans de préférencesObtenir de l'aide et vous déconnecter
Espace de travail iSQL*Plus
16
La commande DESCRIBE est utilisé pour afficher la structure d’un objet de type base de donnée
Cette commande appartient à SQl *plus
Décrire les données:
17
La liste select La clause from La condition where qui est facultative
Interroger les données
18
On utilise la clause order by pour trier les données
Les données sont triées par ordre croissant par defaut
Trier les données
19
Une jointure sert à extraire des données de plusieurs tables.
SELECT table1.column, table2.column FROM table1, table2WHERE table1.column1 = table2.column2;
Joindre des tables:
20
Select e.ename, d.dname From EMP e, DEPT d Where e.deptno=d.deptno
Joindre des tables:
21
Manipuler les données
22
INSERT INTO table [(column1,[column2…])] VALUES (value1[,value2….]); update table set column= value [where conditions];
delete from table [where conditions];
Ordre Description Insert Ajouter une nouvelle ligne
dans la tableupdate Modifie des lignes dans la
tableDelete Supprimer des lignes d’une
table
Create TABLE nom_table( colonne1 type1, colonne2 type2 …) ; ALTER TABLE nom_table
ADD colonne1 Type; DROP TABLE nom_table;
Définir des données
23
Instruction descriptionCREATE définir des nouveaux Objets
d’une base de donnée ALTER modifier des objets existants
dans la base de donnée DROP supprime les objets de la base
de donnée
Unité logique de traitement formée d’une suite d’actions limitée par une opération de validation ou d’annulation◦ Début:
Exécution une instruction SQL (exécutable) Fin de la transaction précédente
◦ Fin : Validation (COMMIT) ou Annulation (ROLLBACK sans
clause SAVEPOINT) Ordre LDD Fin de session Panne
Présentation des Transactions
24
COMMIT:◦ met fin à une transaction en validant tous les
changements de données et place la base dans un nouvel état cohérent
ROLLBACK:◦ met fin à une transaction en annulant tous les
changements de données dans la transaction
Instructions de contrôle des transactions
25
ROLLBACK TO:◦ annule les instructions jusqu'au point de
sauvegarde SAVEPOINT:
◦ place un marqueur défini par un identifiant permettant une annulation partielle de la transaction
Instructions de contrôle des transactions
26
Est un mécanisme qui empêche plusieurs utilisateurs de tenter de mettre à jour les mêmes données simultanément
Verrouiller les données
27
Instructions de contrôle de session : Deux instructions :ALTER SESSION et SET ROLE Gèrent de manière dynamique les propriétés d'une
session utilisateur Ne valident pas implicitement la transaction en cours Non pris en charge par PLSQL
Instruction de contrôle système : Une seule Instruction : ALTER SYSTEM gère de manière dynamique les propriétés d'une
instance Oracle Ne valide pas implicitement la transaction en cours Non pris en charge par PLSQL
Autres catégories d’instructions :
28
Instructions SQL intégrées : Ces instructions intégrent:
• instructions LDD• instructions LMD • instructions de contrôle des transactions dans un
programme utilisant un langage procéduralLe code SQL intégré :
• pris en charge par les pré compilateurs Oracle• Documenté dans les manuels :
Pro*COBOL Programmer's GuidePro*C/C++ Programmer's GuideSQL* Module for Ada Programmer's Guide
Autres catégories d’instructions :
29
un langage structuré à base de blocs ajoute des techniques de programmation
structurée au langage SQL Constitué de:
DECLARE : permet de définir les constantes et les variables (partie facultative )
BEGIN : début du code du bloc. Le code est constitué de commandes SQL et PL/SQL(partie obligatoire)
EXCEPTION : permet de définir des exceptions locales. En général, les exceptions sont générées suite à une condition d'erreur(partie facultative )
END : fin du bloc (partie obligatoire)
Langage PL/SQL
30
Peut être utilisé dans les structures:Blocs anonymes Fonctions ProcéduresPackagesDéclencheurs (triggers)Types d'objet
Langage PL/SQL
31
Possibilité d’appeler les procédures stockées Java à partir de n'importe quel bloc, sous-programme ou package PL/SQL
Possibilité d'appel des fonctions et procédures stockées PL/SQL par JDBC
Oracle et langage JAVA
32
OCI (Oracle Call Interface ): ◊ API qui permet aux applications écrites en
langage C d'interagir avec un ou plusieurs serveurs de base de données Oracle
JDBC (Java Database Connectivity):◊ API standard permettant d'accéder aux bases de
données relationnelles à partir de programmes écrits en langage Java
Quelques API
33
ODBC (Open Database Connectivity) :◊ offre une interface standard permettant à une
application d'accéder à de nombreuses sources de données différentes
ODP.NET (Oracle Data Provider for .NET) :◊ permet un accès rapide et fiable aux
fonctionnalités de base de données et aux données à partir de n'importe quelle application .NET
Quelques API
34
35
Contrôler une base de donnée
36
Le répertoire où est installé Oracle est indiqué par la variable d'environnement :© %ORACLE_HOME% pour le système Microsoft
Windows. Sa valeur est définie dans le registre.© $ORACLE_HOME pour les systèmes UNIX. Sa
valeur est définie dans le fichier .profile.
Gérer l’instance Oracle
37
Le démarrage de l'instance et l'ouverture de la base de données se fait grâce à la commande STARTUP. Les étapes:
$ sqlplus /nolog SQL> connect sys/password as sysdba SQL> startupC'est l'instance <SID> par défaut qui sera
démarrée. Le SID est défini dans la variable d'environnement $ORACLE_SID.
Démarrage De La Base de Donnée
38
Pour un Startup/Shutdown via Enterprise Manager, vous serez appelés à entrer les informations suivantes :* Informations d'identification de l'hôte (Host Credentials): c'est à dire
un compte du groupe DBA (pour UNIX) ou ORA_DBA (pour Microsoft Windows). Généralement, c'est le compte avec lequel vous avez fait l'installation d'Oracle Database.
* Informations d'identification pour la connexion à la base (Database Credentials): c'est le compte Oracle ayant le privilège SYSDBA. Généralement c'est le compte SYS
Démarrage De La Base de Donnée
39
♦ Le processus DBConsole étant démarré, pour accéder à l'interface de gestion, entrez l'url suivante dans votre navigateur Web : http://hostname:1158/em
♦ Si la base de données est arrêtée, une page est affichée sur votre navigateur pour :
Démarrer l'instance Oracle. Démarrer le processus d'écoute (listener) ou pour lancer des opérations de récupération.
♦ Si au contraire, la base de données est déjà démarrée, une page Login est affichée vous demandant votre "nom utilisateur" et "mot de passe" autorisé à accéder à Database Control.. Connectez-vous en tant que SYSDBA ou SYSOPER pour vous doter de privilèges d'administration spécials.
Accès à Database Control
40
Définition :Le processus d’écoute Oracle listener est le principal composant Oracle coté serveur qui permet d'établir la connexion entre les ordinateurs clients et une base de données Oracle. Le listener peut être considéré comme une grande oreille qui écoute les demandes de connexion aux services Oracle.
démarrer et arrêter le processus d’écoute oracle
41
La méthode de ligne de commande pour le démarrage, l'arrêt et l'affichage du statut du processus d'écoute est la suivante :
lsnrctl START [listener_name] lsnrctl STOP [listener_name] lsnrctl STATUS [listener_name]
où listener_name est le nom du processus d'écoute défini dans le fichier listener.ora.
démarrer et arrêter le processus d’écoute oracle
42
démarrer oracle Database 10gil existe 3 type de démarrage: ouverture mount ouverture nomount ouverture open
démarrer et arrêter oracle Database 10g
43
Le démarrage d'une instance inclut les opérations suivante:§ Lecture du fichier d'initialisation à partir du répertoire
$ORACLE_HOME/dbs, dans l'ordre suivant :• D'abord spfileSID.ora• S'il n'est pas trouvé, alors spfile.ora• S'il n'est pas trouvé, alors initSID.ora par défaut.
§ Allocation de la mémoire SGA§ Démarrage des processus en arrière-plan§ Ouverture du fichier alertSID.log et des fichiers trace§ STARTUP NOMOUNT[nom_BD]
Ouverture en Etat NOMOUNT
44
L’instance ouvre le fichier de contrôle.§ Les chemins des fichiers de données et journaux sont lus,
mais pas ouverts§ État MOUNT : seuls SYSDBA et SYSPOER peuvent
interroger la BD§ La vue V$DATABASE est interrogeable, mais pas les vues
statiques, puisque la base n’est pas ouverte§ Exemple de tâches : restauration, activation du mode
ARCHIVELOG, déplacement des fichiers de données et journaux
STARTUP MOUNT [nom_BD]
Ouverture en Etat MOUNT
45
© Ouverture des fichiers de données et journaux.
© État OPEN : tous les utilisateurs peuvent accéder à la BD.
© Toutes les vues du DD sont accessibles.© STARTUP OPEN [nom_BD]
Ouverture en Etat OPEN
46
Arrêt normal Oracle ne permet plus l’ouverture des nouvelles sessions Oracle attend que le dernier utilisateur soit déconnecté pour
arrêter l’instance Il s’agit d’un arrêt propre (checkpoint avant fermeture)
SHUTDOWN NORMALArrêt Transactionnel
Oracle ne permet plus le lancement de nouvelles transactions Oracle attend que la validation/annulation des transactions
courantes Il s’agit d’un arrêt propre (checkpoint avant fermeture)
SHUTDOWN TRANSACTIONAL
Arrêter la base de données
47
Arrêt immédiat Oracle annule toutes les transactions courantes et ferme
la BD Il s’agit d’un arrêt propre (checkpoint avant fermeture)
SHUTDOWN IMMEDIATEArrêt d’abandon
Oracle ferme la BD sans faire de checkpoint. C’est l’arrêt le plus brutal.
Au prochain démarrage, une récupération p g , p des données, par le SMON, est effectuée
SHUTDOWN ABORT
Arrêter la base de données
48