TP 1 Bases de Données Prise en main d Oracle L3 Informatique Université d Aix-Marseille



Documents pareils
COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données

Devoir Data WareHouse

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

TP Contraintes - Triggers

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

Le Langage SQL version Oracle

Bases de SQL. Hacks 1-6 CHAPITRE UN

INSTALLATION DE L APPLICATION DU CONTEXTE ITASTE

Bases de Données relationnelles et leurs systèmes de Gestion

Olivier Mondet

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

SQL Historique

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Les bases de données

PHP. Bertrand Estellon. 26 avril Aix-Marseille Université. Bertrand Estellon (AMU) PHP 26 avril / 214

A QUOI SERVENT LES BASES DE DONNÉES?

I. MySQL : Serveur et SGBD

I/ Présentation. On considère une BD CIRQUE dont le schema conceptuel : PERSONNEL _CIRQUE (NOM, ROLE) ;

A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW

CHAPITRE 4 POLITIQUES DE CONTRÔLES DES ACCÈS SOUS ORACLE ADMINISTRATION ET TUNING DE BASES DE DONNÉES 10/05/2015 RESPONSABLE DR K.

TP Administration Oracle

Bases de données et sites WEB

CREATION WEB DYNAMIQUE

Bases de données relationnelles

TP Bases de données réparties

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

Objectifs du TP : Initiation à Access

1 Introduction et installation

Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications

Notes de cours : bases de données distribuées et repliquées

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour

Mysql avec EasyPhp. 1 er mars 2006

Partie 0 : Gestion des tablespace et des utilisateurs... 3

INSIA Bases de données ORACLE Installation SQL*Plus SQL-Developer

Installation d'un serveur FTP géré par une base de données MySQL

MODE OPERATOIRE OPENOFFICE BASE

OpenPaaS Le réseau social d'entreprise

Le langage SQL Rappels

Le langage SQL (première partie) c Olivier Caron

Configurer la supervision pour une base MS SQL Server Viadéis Services

Partie II Cours 3 (suite) : Sécurité de bases de données

Bases de données et sites WEB Licence d informatique LI345

Comment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes

Le Langage De Description De Données(LDD)

Bases de données avancées

Architecture de la plateforme SBC

Cours: Administration d'une Base de Données

MySQL avec Mac OS X. Quelques manipulations avec le terminal sont nécessaires si une version de MySQL est déjà lancée:

A QUOI SERVENT LES BASES DE DONNÉES?

TUTORIEL D INSTALLATION D ORACLE ET DE SQL DEVELOPPER TUTORIEL D INSTALLATION D ORACLE...1 ET DE SQL DEVELOPPER...1

Gestion des utilisateurs et de leurs droits

Compétences Business Objects

Pratique et administration des systèmes

PHP 5. La base de données MySql. A. Belaïd 1

Introduction au Système de Gestion de Base de Données et aux Base de Données

Cours Bases de données 2ème année IUT

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

Gestion des transactions et accès concurrents dans les bases de données relationnelles

GLPI OCS Inventory. 1. Prérequis Installer un serveur LAMP : apt-get install apache2 php5 libapache2-mod-php5 apt-get install mysql-server php5-mysql

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées

Langage SQL : créer et interroger une base

I4 : Bases de Données

//////////////////////////////////////////////////////////////////// Administration bases de données

SQL sous SqlServer OLIVIER D. DEHECQ Olivier 0

PHP 4 PARTIE : BASE DE DONNEES

PHP et les Bases de données - Généralités

Auto-évaluation Oracle: cours de base

Java DataBaseConnectivity

Historisation des données

Systèmes d informations nouvelles générations. Répartition, Parallèlisation, hétérogénéité dans les SGBD. Exemple d application d un futur proche

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO S2-IO2 Bases de données: Jointures, Transactions

Cours Bases de données 2ème année IUT

TP3 : Creation de tables 1 seance

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE

TP1 - Prise en main de l environnement Unix.

TP Programmation Java / JDBC / Oracle

1. Qu'est-ce que SQL? La maintenance des bases de données Les manipulations des bases de données... 5

CHAPITRE 1 ARCHITECTURE

COMPOSANTS DE L ARCHITECTURE D UN SGBD. Chapitre 1

Encryptions, compression et partitionnement des données

Bases de Données Avancées PL/SQL

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

GUIDE D INSTALLATION DE L APPLICATION GECOL SUR

Gestion de base de données

PROJET 1 : BASE DE DONNÉES REPARTIES

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Bases de données cours 1

Les déclencheurs. Version 1.0. Grégory CASANOVA

Pour les débutants. langage de définition des données

Procédure serveur : gestion des environnements X3 et bases de données ORACLE

Cours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry

MySQL / SQL EXEMPLES

Administration des bases de données. Jean-Yves Antoine

Mysql. Les requêtes préparées Prepared statements

Transcription:

TP 1 Bases de Données Prise en main d Oracle L3 Informatique Université d Aix-Marseille 1 Prise en main de SQLplus Oracle est un SGBD Relationnel muni de nombreuses fonctionnalités (celles classiques des SGBDR, mais beaucoup de modules supplémantaires.) Sur le site Saint-Charles de l Université d Aix-Marseille, il est installé sur le serveur cyber-data. Les ordinateurs des salles 301, 302 et 303 peuvent y accéder via un logiciel client appelé SQLplus c est une interface permettant de lancer l exécution d expressions SQL sur le serveur Oracle, et de récupérer les résultats. 1.1 Connexion Si login est votre nom de login, et mdp votre mot de passe, il suffit d écrire dans un terminal : prp$ sqlplus login@xe et de donner mdp pour se connecter. Le signe SQL > est un prompt qui indique que sqlplus est prêt à recevoir des commandes. Voici un exemple de connexion : prp$ # sqlplus login@xe SQL*Plus: Release 11.2.0.1.0 Production on Tue Sep 18 16:11:00 2012 Copyright (c) 1982, 2009, Oracle. All rights reserved. Enter password: Connected to: Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production Pour se déconnecter, on utilise les commandes QUIT ou EXIT. Il est important de changer votre mot de passe avec les commandes : ALTER USER login IDENTIFIED BY nouveau_mdp ;... COMMIT; 1.2 Lancer des commandes SQLplus accepte trois types de commandes : les expressions SQL, les expressions PL-SQL, et les commandes propres à SQLplus. Ces dernières concernent des commandes d affichage, de chargement de commandes SQL stockées dans un fichier, des commandes de sauvegarde, et des commandes de paramétrage. Il est possible de traiter en mode interactif ou en mode batch.

En mode interactif, on saisit les commandes après le prompt, éventuellement sur plusieurs lignes (qui sont alors numérotées), et on termine par le caractère ; pour lancer l interprétation sous Oracle. SELECT nom, ville 2 FROM Hotel 3 ; NOM VILLE --------------------------------------- Hotel des Alpes Grenoble Chez Marion Nice Au petit lit Nice Le dors-bien Toulon En mode batch, on stocke les commandes SQL dans des fichiers d extension.sql, et on charge un fichier avec la commande start ou avec le symbole @ juste devant le nom du fichier. Par exemple, si le fichier all hotels.sql contient l expression SQL précédente, on lance son interprétation via : start all_hotels; NOM VILLE --------------------------------------- Hotel des Alpes Grenoble Chez Marion Nice Au petit lit Nice Le dors-bien Toulon Evidemment, le mode batch (fichier) est très pratique lorsqu on a de nombreuses expressions à lancer, et que l on veut en garder une trace. 1.3 Le spool : sauvegarde de ce que l on fait La commande spool permet de générer un fichier texte qui contient toutes les commandes passées à l écran. Nous l utiliserons notamment lors du TP noté. Pour lancer la sauvegarde des commandes passées : SPOOL nom_fichier.txt A partir de là, toutes les commandes seront sauvegardées dans le fichier, jusquà ce que l utilisateur lance la commande : SPOOL OFF Attention, entre ces deux commandes, le fichier de sauvegarde est ouvert en écriture : il ne faut pas chercher à l éditer! Attention encore, si ce fichier est édité par un autre programme que SQLplus, c est facile de le savoir...

1.4 Autres commandes usuelles SAVE nom fichier [append create replace] permet de sauvegarder le contenu du buffer dans un fichier.sql. COL adresse FORMAT A12 formatte l affichage d une colonne de nom adresse sur 12 caractères. COL prixnuitht FORMAT 999.99 formatte l affichage d une colonne de nom prixnuitht (type flottant) avec 3 chiffres en partie entière et deux chiffres en partie réelle. CLEAR COL permet de remettre l affichage par défaut des colonnes. SET LINESIZE 180 affecte la taille 100 aux lignes du buffer. CLEAR SCREEN efface l écran du buffer. DESC nom table affiche la description d une table / le slash réactive la dernière commande TERM {ON OFF} contrôle l affichage des commandes lors du chargement d un fichier. ACCEPT reference NUMBER PROMPT Donnez le numero de l hotel = permet, après la saisie de l utilisateur, de réutiliser la valeur du paramètre de nom reference. Par exemple, on peut ensuite lancer l expression SQL : SELECT nom, ville 2 FROM Hotel 3 WHERE numhotel = &reference; 2 Les premières tables et données Cette partie vous montre, à travers quelques commandes simples, comment créer, sous Oracle, vos premières structures de bases de données, et comment insérer vos premières données. 2.1 Première création de table CREATE TABLE Emp(eName varchar2(16), salary NUMBER); Nous créons ainsi une table (équivalent SQL d une relation), nommée Emp et constituée de deux colonnes. Précisons que SQLplus ne distingue pas majuscules et minuscules, mais il est plus lisible de saisir les mots-clés SQL en majuscules. INSERT INTO Emp VALUES ( Mike, 2687.12); Nous insérons ici la première donnée : celle d une ligne (tuple) de Emp, qui correspond à un employé de nom Mike et qui a pour salaire : 2687.12. Insérez d autres tuples. 2.2 Mini-requête Essayez de lister tous les employés (toutes les lignes de la table Emp avec l instruction SQL : SELECT ename, salary FROM Emp; 1. Qu observe-t-on à l affichage?

2. Comment, avec la commande SPOOL, sauvegarder, dans un fichier, l instruction SQL et son résultat? Le réaliser. 3. Utiliser les commandes SQLplus pour que l affichage du nom se fasse sur seulement 10 caractères, et que le salaire soit exprimé avec 5 chiffres en partie entière, et 2 chiffres en partie réelle. 2.3 Mode SQLplus batch 1. Créer un répertoire BD sur votre espace de travail : tous les fichiers créés ensuite le seront dans ce répertoire. 2. Créer un fichier schema.sql contenant l instruction SQL de création de la table Employe (même schéma que Emp, mais un nom différent). 3. Créer un fichier donnees.sql contenant l instruction SQL d insertion de Mike dans la table Employe, et indiquer, dans ce fichier, l insertion d une dizaine d autres employés. 4. Lancer l interprétation de ces deux fichiers, l un après l autre, sous SQLplus. 5. Lister tous les employés, directement sous SQLplus : combien sont-ils? Relancer l interprétation de donnees.sql, et relancer la requête pour obtenir la liste de tous les employés : qu observe-t-on? Comment, dès la création de la table, pourrions-nous éviter cela? 2.4 Autre requête La requête suivante correspond à une restriction suivie d une projection. L exécuter sous SQLplus. Puis modifier cette requête pour que, en connaissance des données, le résultat soit vide. (PS : on saisit cette requête ainsi, avec les retours à la ligne : observer la numérotation des lignes... On lance l exécution de la requête avec le point virgule final.) SELECT * FROM Employe WHERE salary > 487400.02 ; 2.5 Retour sur le SPOOL Créer un fichier de nom employes.txt, qui comporte la trace de l instruction SQL précédente, et son résultat. Il s agit de placer les commandes SPOOL et SPOOL OFF aux bons moments... 2.6 Création d autres tables Avec ce que l on vient de voir, et la documentation en ligne d Oracle si besoin, créer la table Hotel, et insérer quelques hôtels. Utiliser les fichiers batch pour cela. Le but de cet exercice : comment spécifier, en SQL, la contrainte de clé primaire... (PS : quand on fait une erreur, l instruction SQL pour supprimer une table de nom ttt est : DROP TABLE ttt;).

3 Documentation en ligne La documentation officielle http://docs.oracle.com/cd/b19306 01/server.102/b14357/toc.htm Les grandes fonctionnalités expliquées et illustrées http://deptinfo.unice.fr/ grin/messupports/sqlplus.pdf