Compte

[TYPE THE DOCUMENT TITLEI [Pick the date] [Type the document subtitlel [Type the abstract of the document here. The abstract is typically short summary of the contents of the document. Type the abstract of the document here.

The abstract is typically a short summary of the contents of the docu [Type the document 5 Swipetaviewn htp g [Type the document title] [TYPE THE SUBTITLE] Sommaire page 1 Introduction a gestion et l’accès à une base de données sont assurés par un the document title] SQL, une norme, un succès c ‘est IBM, à tout seigneur tout honneur, qui, avec System-R, a implanté le modèle elationnel au travers du langage SEQUEL (Stuctured English as QUEry Language) rebaptisé par la suite SQL (Structured Query Language).

La première norme (SQL 1) date de 1987. Elle était le résultat de compromis entre constructeurs, mais fortement influencée par le dialecte d’IBM. SQQ a été normalisée en 1992. Elle définit quatre niveaux de conformité : le niveau d’entrée (entry level), les niveaux intermédiai- res (transitional et intermediate levels) et le niveau supérieur (full level). es langages SQL des principaux éditeurs sont tous conformes au premier niveau et ont eaucoup de caractéris- tiques relevant des niveaux supérieurs.

La norme SQL3 (intitulée initialement SQL:1999) comporte de nombreuses parties : concepts objets, entrepôts de données, séries temporelles, accès à des sources non SQL, réplication des données, etc. (chaque partie étant nommée ISO/ IEC 9075-i:2003, i allant de 1 ? 13). La plus récente partie de la norme de 2006 (ISO/IEC 9075-14:2006) est consacré ? XML.

Le succès que connaissent les grands éditeurs de SGBD relationnels (IBM, Oracle, Microsoft, Sybase et Computer Associates) a plusieurs origines et repose notamment sur onsidèrent ainsi que le langage SQL n’est pas assez complet (le dialogue entre la base et l’interface n’est pas direct) et la littérature parle de « défaut d’impédance » (impedance mismatch). Les SGBD rendent indépendants programmes et données (la modification d’une structure de données n’entraine pas forcément une importante refonte des programmes d’application).

Ces systèmes sont bien adaptés aux grandes applications informatiques de gestion (archi- tectures type client-serveur et Internet) et ont acquis une maturité sur le plan de la fiabilité et des performances. Ils intègrent des outils de développement comme les précompilateurs, les générateurs de code, d’états et de formulaires. Ils offrent la possibilité de stocker des informations non structurées (comme le texte, l’image, etc. ) dans des champs appelés LOB (Large Object Binary).

Les principaux SGBD Open Source (MySQL Firebird, Berkeley DB, PostgreSQL) ont adoptés depuis longtemps SQL pour ne pas rester en marge. Les principales Instructions SQL d’oracle sont classifiées dans le tableau suivant : Oracle IS Décision jugée infaillible et émanant d’une personne de grande autorité ; ersonne considérée comme infaillible. Oracle représenterait ainsi à la fois une réponse infaillible, un lieu ou serait rendue cette réponse et une divinité. Rien que ça !

Tout cela peut être en partie vérifié si votre conception est bien faite, vos données insérées cohérentes, vos requêtes et programmes bien écrits. Oracle Corporation, société américaine située en Californie, développe et commercialise un SGBD et un ensemble de produits de développement. Oracle a des filiales dans un grand nombre de pays. La filiale française (Oracle France) a été créée en 1986, elle est composée e cinq départements (marketing, commercial, avant-vente, conseil et formation).

Page 4 [Type the document titlel Un peu d’histoire En 1977, Larry Ellison, Bob Miner et Ed Oates fondent la société Software Development Laboratories (SDC). L’article de Edgar Frank Codd (1923-2003), « A Relational Model of Data for Large d Data Banks Communications of the ACM paru en 1970, fait devenir le mathématicien et ancien pilote de la RAF durant la Seconde Guerre mondiale, inventeur du modèle relationnel et de SQL.

Les associés de SDL devinent le potentiel des concepts de Codd et se lancent dans l’aventure en baptisant leur ogiciel « Oracle En 4 OF Chronologie des versions d’oracle Page 5 Partie Pratique Ce TP a pour objectif d’avoir des Langage de définition de données (L DD) Langage de manipulation de données (CMD) Langage De contrôle de données (LCD) Exercice 1 REPRESENTATION (n0représentation, titre_représentation, lieu) MUSICIEN (nom, n’représentation*, age) PROGRAMMER (datep, Les clés primaires sont soulignées et les clés étrangères sont marquees par * û Pour la table Musicien on a « » comme clé étrangère qui représente la clé primaire de la table Représentation, et par conséquent la cardinalité ax du Représentation égale à « n » et la cardinalité max du Musicien égale à « 1 » D pour la table Programmer on a « n0représentation* » comme clé étrangère qui indique aussi la clé primaire de la table Représentation, alors la cardinalité max du Représentation égale toujours à « n » et la cardinalité max du Programmer égale ? Donc on peut traduire ce modèle logique de donnée par le modèle conceptuel suivant Page 6 System est basé sur SELECT et puisque on veut tous les attributs on ajoute * ensuite l’ensemble de ces tables se trouve dans USER TABLES : Page 7 Résultat de cette commande. On a obtenu 149 lignes sélectionnées, cela signifie qu’il y a 149 tables qui appartiennent à System. – Créer un utilisateur Ul avec sa tablespace tsLJ1 Un utilisateur de base de données va correspondre à un login qui aura reçu certains privilèges. Cet utilisateur sera stocké dans le dictionnaire de données et disposera d’un tablespace (espace de stockage) pour ses objets qui seront alors stockés dans son schéma. un tablespace est un espace de stockage dans lequel des données composant les bases de données peuvent être enregistrées. Il fournit une couche ‘abstraction entre les données logiques et les données physiques, et sert d’espace d’allocation pour tous les segments pris Page 8 en charge par le système de gestion de bases de données. Une fois créé, le tablespace peut être référencé par son nom lors de la création des segments de base de données. OF définition du tablespace on va créer l’utilisateur avec un login et un mot de passe, Ce mode, c’est le mode par défaut. En clair l’utilisateur est authentifié avec le mot de passe stocké dans la base de données. pour créer un utilisateur authentifié par la base de données, on oit utiliser la clause CREATE USER IDENTIFIED BY •password>. Et pour associer un tablespace à l’utilisateur on ajoute la clause DEFAULT TABLESPACE Tabl QUOTA IOM ON Tabi cette étape consiste à définir aussi l’espace alloué à l’utilisateur sur chacun des tablespaces. Alors on a créé un utilisateur avec login . Ul et un mot de passe : Ul, cet utilisateur a un espace de 1 OMO sur le tablespace Tabl .

Page 9 3- Créer un rôle RI qui contient les privilèges suivants : création session, des tables, vues, sequences. Rôles et privilèges sont définis pour sécuriser l’accès aux données e la base Ces concepts sont mis en œuvre pour protéger les données en accordant (ou retirant) des privilèges a un utilisateur ou un groupe d’utilisateurs. Un rôle est un regroupement de privilèges. Une fois créé il peut être assigné à un utilisateur ou à un autre rôle. Les privilèges sont de deux types es privilèges de niveau système Qui permettent la créatio , suppression, exécution des objets spécifiques, les privilèges SELECT, INSERT, UPDATE, DELETE sur la table HR.

EMPLOYEES par exemple permettent ? l’utilisateur qui les a reçus de sélectionner, ajouter, modifier et upprimer des lignes dans la table EMP appartenant à l’utilisateur HR. Syntaxe : CREATE ROLE « nom » ; On a créé le rôlel maintenant on va ajouter les privilèges à ce rôle, en utilisant la clause GRANT TO , les droits demandés sont : Création des sessions. Création des tables. Création des vues. Création des séquences. Syntaxe: grant create session, create table , create View , create sequence to Role; page IO Autorisation a été effectuée avec succes 4- Autoriser à Ul le rôle RI. Pour accorder le rôle « Role » à l’utilisateur « Ul meme clause GRANT

Syntaxe : GRANT ROLE TO IJI; » on applique la Jusqu’à maintenant on a terminé la définition d’un nouvel utilisateur qui a un tablespace et des privilèges, donc c’est la partie de contrôle de données Un Langage de contrôle de données ou LCD) est un langage de SQL pour contrôler proerammation et un sou verrou sur un objet. Page 1 1 5- Connecter tant qu’Ul Cutilisateur Ul son login est Ul et son mot de passe est Ul . Syntaxe : connect Ul Apres invite de commande SQL nous demande de saisir le mot de passe Alors on est connecté en tant que Ul et comme ça on vérifie aussi que cet utilisateur a eçu le rôle « Role », sinon il y aura un message d’erreur, il nous informe que cet utilisateur ne possède aucun droit. – Création des tables REPRESENTATION (noreprésentation, titre_représentation, lieu) MUSICIEN (nom, n0représentation*, age) PROGRAMMER (dateP, nareprésentation*,prix) On va créer les trois tables en appliquant les contraintes suivantes : marquées par * Lieu : « casa » ou «Settat» ou « rabat » pour pouvoir créer une table l’utilisateur Ul doit avoir le privilège système CREATE TABLE, cet utilisateur a hé -on qui concerne la déclarer une clé étrangère on utilise la commande suivante ALTER TABLE tablel ADD CONSTRAINT FOREIGN KEY (champs) REFERENCES table2(champ). Les contraintes permettent de limiter le type de données ? insérer dans une table. Ces contraintes peuvent être spécifiées lors de la création de la table par l’intermédiaire de page 12 l’instruction CREATE TABLE, ou après la création de la table au moyen de l’instruction es contraintes les plus communes sont : ALTER TABLE. L NOT NULL UNIQUE CHECK Clé primaire Clé étrangère Pour la contrainte Lieu : « casa » ou «Settat» ou « rabat », on peut pour la déclarer avec 2 méthodes : Méthode 1 page 13 0 OF