[PDF] SQL pour Oracle





Previous PDF Next PDF



[PDF] ED PL/SQL - Cedric-Cnam

21 nov. 2013 Modifiez le programme PL/SQL de l'exercice précédent pour qu'il fonctionne ... Joan Casteel Oracle 11g: PL/SQL Programming



ED PL/SQL

Modifiez le programme PL/SQL de l'exercice précédent pour qu'il fonctionne même Joan Casteel Oracle 11g: PL/SQL Programming



Mise en page 1

Exercices et corrigés. Jérôme GABILLAUD. Anne-Sophie LACROIX. 90 QCM. 93 travaux Oracle 12c - Programmez avec SQL et PL/SQL. Les TP Informatiques. 60. Après l ...



Programmation en PL/SQL Oracle

V.2.2) Correction des erreurs Exercice. Ecrire un programme PL/SQL qui affiche les multiples de 3 4 et 5 qui sont entre 4 et 32. Solution. SET ...



Exercices Corrigés Initiation aux Base de données

Langage SQL. Page 19. Université IBN ZOHR. 2012/2013. Faculté Polydisciplinaire de Ouarzazate. 19. III. Langage SQL. Exercice 1. Soit la base de données 



M2106 - Programmation et administration des bases de données

Ce chier contient les solutions des exercices précédents corrigés en TD. Ouvrir le chier avec SQL Developer et exécuter les instructions une par une. Exercice 



SGBD-PLSQL

Présente les objets-Oracle de chaque utilisateur. Name. Null? Type Correction Exercice recap1. Create or replace Procedure P_Mois. IS v_date DATE ...



Introduction au PL/SQL Oracle

17 oct. 2011 3 Corrigés. 38. 3.1 Introduction au PL/SQL ... Exercices. 2.1 Introduction au PL/SQL. Exercice 1. Ecrivez un programme ...



BASES DE DONNÉES ET MODÈLES DE CALCUL

Exercices. 54. CHAPITRE 4 • LE LANGAGE SQL DDL. 55. 4.1 Introduction. 55. 4.2 Le ... ORACLE SQL Server



PL/ SQL

) http://download.oracle.com/docs/cd/E11882_01/appdev.112/e17126.pdf (page 110) • Exercice: écrire un bloc PL/SQL qui permet de déclarer deux variable de ...



ED PL/SQL

21 nov. 2013 ED PL/SQL. (Corrigé). Par la suite on considère que les tables utilisées par les exercices ont été déjà crées et.



Programmation en PL/SQL Oracle

Pour surmonter ces limitations Oracle intègre un gestionnaire PL / SQL au serveur de base de données et à certains de ses outils (formulaires



Mise en page 1

Programmez avec SQL et PL/SQL. Oracle 12c. Exercices et corrigés. Jérôme GABILLAUD. Anne-Sophie LACROIX. 90 QCM. 93 travaux pratiques et leurs corrigés.



PL/ SQL

Un programme PL/SQL est composé de fonctions de procédures



ED PL/SQL

ED PL/SQL. (Corrigé). Par la suite on considère que les tables utilisées par les exercices ont été déjà crées et remplies avec les données nécessaires.



NFA011 : corrigé de lexamen 2

27 avr. 2006 Corrigé examen 2. Exercice n° 2 : Ecrivez une procédure stockée PL/SQL qui permet de vérifier avant l'ajout d'une personne dans la base



Gestion des transactions pour la fiabilité et la concurrence

29 janv. 2018 Exercice : Mini-TP : Transaction en SQL standard sous PostgreSQL . ... Exemple : Transaction sous Oracle en PL/SQL .



Introduction au PL/SQL Oracle

17 oct. 2011 Corrigés. 3.1 Introduction au PL/SQL. ?? Exercice 1. DECLARE a NUMBER; b NUMBER; t NUMBER;. BEGIN a := 1; b := 2;. DBMS_OUTPUT .



SQL pour Oracle

émaillé de nombreux exemples et de 50 exercices corrigés qui illustrent Cette partie décrit les caractéristiques du langage procédural PL/SQL d'Oracle.



Module 12 : Les ateliers PL/SQL version 4.1

Tsoft/Eyrolles – PL/SQL pour Oracle 12c exercices et QCM supplémentaires. ... Retrouvez le script créé pour l'Atelier 13 dans l'exercice 2 ...



Mastering Oracle PL/SQL: Practical Solutions

his passion for Oracle and as part of an endeavor to improve the way in which Oracle software is used within the industry Chaim Katzis an Oracle Certified Professional who has worked with Oracle products since Oracle version 4 He specializes in database administration and PL/SQL development and over the years he has written numerous



Module 12 : Les ateliers PL/SQL version 4

Exercice n° 1 Installation Installez Oracle XE sur votre machine d’exploitation en tenant compte de votre système 1 2 Les outils SQL*Plus Questions Quel est l'outil que vous retrouvez sur chaque serveur de base de données installée ? SQL*Plus iSQL*Plus SQL*Plus Worksheet Oracle Enterprise Manager



Déclarations itérations boucles instructions conditionnelles

Les curseurs implicites sont créés par PLSQL lors de l’exécution des commandes SQL qui itèrent sur plusieurs items (INSERT UPDATE DELETE SELECT etc) Les attributs du dernier curseur implicite utilisé sont accessibles par le préfixe SQL : SQL FOUND SQL NOTFOUND SQL ROWCOUNT DECLARE total NUMBER(2); BEGIN UPDATE EMPLOYE



Chapitre 4 Solutions aux Exercices - etsmtlca

1) Formulez en SQL les requêtes suivantes sur le schéma de la BD de la pépinière PleinDeFoin (N B a) à m) sont identiques à l'exercice 2 sur l'algèbre relationnelle) Cherchez les formulations équivalentes : a) Les Clients dont le noTéléphone = (999)999-9999 SELECT * FROM Client WHERE noTéléphone = ‘(999)999-9999’



Cours 2 : PL/SQL Procedural Language/SQL - LRI

exécute une instruction SQL C’est une zone de travail de l’environnement utilisateur qui contient les informations relatives à l’instruction SQL : • Le texte source de l’ordre SQL • Le texte «compilé» de l’ordre SQL • Un tampon pour une ligne du résultat • Le statut ( cursor status )



TME 10 : PL/SQL

- des commandes SQL*Plus permettant de positionner des options de modifier la présentation des résultats d'exécuter des fichiers de commandes Une suite de commandes contenant un ou plusieurs blocs PL/SQL doit être terminée par un / 1 1 2 Bloc PL/SQL Un bloc PL/SQL a la structure suivante ( les [ ] encadrant les éléments



Oracle Database PL/SQL Language Reference

Oracle Database PL/SQL Language Reference Oracle Database PL/SQL Language Reference Oracle Database



Oracle Database SQL Language Quick Reference

For more information see these Oracle resources: Oracle Database PL/SQL Language Reference for information on PL/SQL the procedural language extension to Oracle SQL Pro*C/C++ Programmer's Guide Oracle SQL*Module for Ada Programmer's Guide and the Pro*COBOL Programmer's Guide for detailed descriptions of Oracle embedded SQL



- Programmez avec SQL et PL/SQL Oracle 12c

Ce chapitre est consacré à la mise en pratique des premiers concepts du langage PL/SQL c'est-à-dire à bien comprendre la structure de bloc PL/SQL le fonctionnement des curseurs ladéclaration de variable les tableaux et les exceptions Une mise en pratique du package DBMS_OUTPUT est également présentée



Introduction au PL/SQL Oracle - mcoursnet

1 1 Introduction au PL/SQL 1 1 1 PL/SQL Le PL de PL/SQL signi e Procedural Language Il s’agit d’une extension proc edurale du SQL permettant d’e ectuer des traitements complexes sur une base de donn ees Les possibilit es o ertes sont les m^emes qu’avec des langages imp eratifs (instructions en s equence) classiques



PL/SQL (ORACLE) - EXEMPLES - LIRMM

SQL> EXECUTE :a := AGEPLUS2(’a’); PL/SQL procedure successfully completed SQL> print a; A-----1992 Une proc´edure ou une fonction peut ˆetre e?ac´ee : DROP PROCEDURE DROP FUNCTION 2 Variables Les variables peuvent ˆetre de tous les types SQL ou du type BOOLEAN (avec deux valeurs possibles : TRUEet FALSE)



Searches related to exercices corrigés pl sql oracle filetype:pdf

See 3-2: Understanding PL/SQL Records for reference Hints: Use the ROWTYPE attribute on ad_departments table to declare the PL/SQL record variable Use the record field notation to print the record values Assignment 2: Create a PL/SQL block to retrieve the names of some courses from

9 7 8 2 2 1 2 1 4 1 56
6 SQL pour

Oracle

Applications avec Java, PHP et XML

Optimisation des requêtes et schémas

Christian Soutou

pendant. Rattaché au département Réseaux et Télécoms de l"IUT de Blagnac, il intervient autour des

technologies de l"information en DUT, licence et master professionnels, ainsi que pour le compte de

la société Orsys. Il est également l"auteur d"ouvrages sur SQL Server, MySQL, UML et les bases de

données, tous parus aux éditions Eyrolles.

i eooecsdTènaSoelsoeadensdecscpciumecsdesveci hîsdesàacecsdesdhîîfec.sRhîS cseisdesd xISroifstnhvnecc "els osecis

fma oofsdesîhmàneréseéemtoecseisdesUBseéenS SecsShnn vfcsJr s oorcineîisihrcsoecsacteSicsxhîdameîiarésdes

g,D.sRhr"naîisoecs"enc hîcsq sOsyQSsdTènaSoels ostenmeisdescesxam o an censa"eSscecstn îS taoecsxhîSi hîîao ifcls

a îc sJrTa"eSsoecsLMbsoecstorcsri o cfecsE321RlsMŠMseis'OEDs12Ž.sReso "nesShîcaSnesfvaoemeîisrîsS'at ineseîi ensOs

oThti m cai hîsdecsneJr'iecseisdecscS'fmacsneoai hîîeoclseîsfird aîisoThti m cernlsoecsciai ci Jreclsoasmecrnesdecs

tenxhnmaîSecseisoTemtoh sdesoasàh"iesOshri ocs"sShîina îiecls îdeélsiaàoecshnvaî cfecseîs îdeélstani i hîîemeîils

"recsmaifn ao cfecseisdfîhnmao cai hî.sOE cesOs•hrnseisarvmeîifelsSeiiesceti umesfd i hîsaSirao cesoastani es'OEDs

12seistnfceîiesoTanS' ieSirnesmroi ieîaîisdesoas"enc hîsyQS.

-sLrésdf"eohtterncsRlsR˜˜ls3a"alsMŠMseis'OEDsJr schr'a ieîiscihS™ensoerncsdhîîfec

dTènaSoelsdesoasq sOsoasyQSsEfd i hîcs'étneccseis'îientn ceŽ.sRecs"enc hîcster"eîis'inesifofS'anvfecsvnair iemeîis

crnsoesc iesdTènaSoes"sdeci îfecsOsdecsIîcsîhîsShmmenS aoeclseooecschîisShmtouiecseiscaîcso m iai hîsdesdrnfe.

oa unSrermrîdcrfSréaiSàâåú -sRhîcroie¢soecsm cecsOs•hrnseisoecsShmtofmeîic -s1 aohvre¢sa"eSsoTariern r -sh r

è aTpS

S rJfnunsv. S rJfnunsv ista na Sou eiiomS îmsdcf éuSfà é lf"v"fuîfTJr niîm-mc îmsdfèucfaupt.îucfuîfcSRx- c "STrRxrSIS TnTSirTs nUJi tian Soutou S rJfnunsv. S rJfnunsv c

Couvre Oracle 12

c �e�d�j�g

DU MÊME AUTEUR

C. SOUTOU, F. BROUARD, N. SOUQUET et D. BARBARIN. - SQL Server 2014.

N°13592, 2015, 890 pages.

C. SOUTOU. - Programmer avec MySQL (3

e

édition).

N°13719, 2013, 520 pages.

C. SOUTOU. - Modélisation de bases de données (3 e

édition).

N°14206, 2015, 352 pages. À paraître.

AUTOUR D'ORACLE ET DE SQL

N°14056, 2014, 564 pages.

N°14057, 2014, 336 pages.

N°14054, 2014, 416 pages.

N°14055, 2014, 340 pages.

C. PIERRE DE GEYER et G. PONÇON - Mémento PHP et SQL (3 e

édition).

N°13602, 2014, 14 pages.

N°12899, 2011, 600 pages.

N°12899, 2011, 432 pages.

G. BRIARD - Oracle 10g sous Windows.

N°11707, 2006, 846 pages.

N°12055, 2006, 650 pages.

G. BRIARD - Oracle 10g sous Windows.

N°11707, 2006, 846 pages.

G. BRIARD - Oracle9i sous Linux.

N°11337, 2003, 894 pages.

�e�d�j�g �Z

En application de la loi du 11 mars 1957, il est interdit de reproduire intégralement ou partiellement le présent ouvrage,

sur quelque support que ce soit, sans l'autorisation de l'Éditeur ou du Centre Français d'exploitation du droit de copie,

20, rue des Grands Augustins, 75006 Paris.

© Groupe Eyrolles, 2004-2015, ISBN : 978-2-212-14156-6

ÉDITIONS EYROLLES

61, bd Saint-Germain

75240 Paris Cedex 05

www.editions-eyrolles.com Si Oracle était doué d'écriture, il penserait certainement aux journalistes et aux autres victimes qui ont perdu la vie au cours des attentats de Paris en janvier 2015.

© Éditions EyrollesVII

Avant-propos

Nombre d'ouvrages traitent de SQL et d'Oracle ; certains résultent d'une traduction hasar-

deuse et sans vocation pŽdagogique, dÕautres ressemblent 2 des annuaires tŽlŽphoniques. Les

survivants, bien quÕintŽressants, ne sont quant 2 eux plus vraiment 2 jour.

Ce livre a ŽtŽ rŽdigŽ avec une volontŽ de concision et de progression dans sa dŽmarche ; il est

illustrŽ par ailleurs de nombreux exemples et Þgures. Bien que notre source principale dÕinfor-

mations fžt la documentation en ligne dÕOracle, lÕouvrage ne constitue pas, 2 mon sens, un simple condensŽ de commandes SQL. Chaque notion importante est introduite par un exemple

facile et dŽmonstratif (du moins je lÕespgre). Ë la Þn de chaque chapitre, des exercices vous

permettront de tester vos connaissances. Depuis quelques annŽes, la documentation dÕOracle reprŽsente des centaines dÕouvrages au format HTML ou PDF (soit plusieurs dizaines de milliers de pages) ! Ainsi, il est vain de vouloir expliquer tous les concepts, m,me si cet ouvrage ressemblait 2 un annuaire. JÕai tentŽ dÕextraire les aspects fondamentaux sous la forme dÕune synthgse. Ce livre rŽsulte de mon expŽrience dÕenseignement dans des cursus dÕinformatique 2 vocation professionnelle (IUT, master professionnel et interentreprise). Cet ouvrage sÕadresse principalement aux novices dŽsireux de dŽcouvrir SQL et de program- mer sous Oracle. ?Les étudiants trouveront des exemples pédagogiques pour chaque concept abordé, ainsi que des exercices thŽmatiques. ?Les développeurs C, C++, PHP ou Java découvriront des moyens de stocker leurs données. ?Les professionnels connaissant déjà Oracle seront peut-être intéressés par certaines nouveautŽs dŽcrites dans cet ouvrage.

Les fonctionnalitŽs de la version 11g ont été prises en compte lors de la troisième édition de

cet ouvrage. Certains mŽcanismes dÕoptimisation (index, clusters, partitionnement, tables

organisŽes en index, vues matŽrialisŽes et dŽnormalisation) sont apparus lors de la quatrigme

Ždition en m,me temps que quelques nouveautŽs SQL (pivots, transpositions, requ,tes pipe

line, CTE et récursivité). La cinquième édition enrichissait l'intégration avec Java (connexion

2 une base MySQL, Data Sources et RowSets) et PHP (API PDO : PHP Data Objects). La

sixigme Ždition prŽsentait lÕoutil SQL Data Modeler. Celle-ci inclut des nouveautés de la

version 12c et actualise principalement la technologie XML DB.

SQL pour Oracle

VIII© Éditions Eyrolles

Par ailleurs, plusieurs compléments qui concernent des usages d'Oracle moins courants sont

disponibles en tŽlŽchargement sur la Þche de lÕouvrage (2 lÕadresse www.editions-eyrolles.com) :

?l'installation de différentes versions (complément 1 : Installation des versions 9i à 12c) ;

?la technologie SQLJ (complément 2 : L'approche SQLJ) ; ?les procédures externes (complément 3 : Procédures stockées et externes) ; ?les fonctions PL/SQL pour construire des pages HTML (complément 4 : PL/SQL Web

Toolkit et PL/SQL Server Pages).

Guide de lecture

Ce livre s'organise autour de trois parties distinctes mais complémentaires. La première inté-

ressera le lecteur novice en la matigre, car elle concerne les instructions SQL et les notions de base dÕOracle. La deuxigme partie dŽcrit la programmation avec le langage procŽdural dÕOracle PL/SQL. La troisigme partie attirera lÕattention des programmeurs qui envisagent dÕutiliser Oracle tout en programmant avec des langages ŽvoluŽs (C, C++, PHP ou Java) ou via des interfaces Web.

Première partie : SQL de base

Cette partie présente les différents aspects du langage SQL d'Oracle en étudiant en détail les

instructions ŽlŽmentaires. Ë partir dÕexemples simples et progressifs, nous expliquons notamment

comment dŽclarer, manipuler, faire Žvoluer et interroger des tables avec leurs diffŽrentes caractŽ-

ristiques et ŽlŽments associŽs (contraintes, index, vues, sŽquences). Nous Žtudions aussi SQL

dans un contexte multi-utilisateur (droits dÕaccgs), et au niveau du dictionnaire de donnŽes.

Deuxième partie : PL/SQL

Cette partie décrit les caractéristiques du langage procédural PL/SQL d'Oracle. Le chapitre 6

aborde des ŽlŽments de base (structure dÕun programme, variables, structures de contr™le, inter-

actions avec la base, transactions). Le chapitre 7 traite des sous-programmes, des curseurs, de la gestion des exceptions, des dŽclencheurs et de lÕutilisation du SQL dynamique.

Troisième partie : SQL avancé

Cette partie intéressera les programmeurs qui envisagent d'exploiter une base Oracle en utili- sant un langage de troisigme ou quatrigme gŽnŽration (C, C++ ou Java), ou en employant une

interface Web. Le chapitre 8 est consacrŽ 2 lÕŽtude des mŽcanismes de base du prŽcompilateur

dÕOracle Pro*C/C++. Le chapitre 9 prŽsente les principales fonctionnalitŽs de lÕAPI JDBC.

© Éditions EyrollesIX

Avant-propos

Le chapitre 10 traite des deux principales API disponibles avec le langage PHP (OCI8 et PDO). Le chapitre 11 prŽsente les fonctionnalitŽs de XML DB et lÕenvironnement XML DB

Repository. Enfin, le chapitre 12 est dédié à l'optimisation des requêtes et des schémas rela-

tionnels.

Conventions d'écriture et pictogrammes

La police courrier est utilisée pour souligner les instructions SQL, noms de types, tables, contraintes, etc. (exemple : SELECT nom FROM Pilote). Les majuscules sont employŽes pour les directives SQL, et les minuscules pour les autres

ŽlŽments. Les noms des tables, index, vues, fonctions, procŽdures, etc., sont prŽcŽdŽs dÕune

majuscule (exemple : la table CompagnieAerienne contient la colonne nomComp).

Les termes dÕOracle (bien souvent traduits littŽralement de lÕanglais) sont notŽs en italique

(exemple : row, trigger, table, column, etc.).

Dans une instruction SQL, les symboles { et } dŽsignent une liste dÕŽlŽments, et le symbole |

un choix (par exemple, CREATE {TABLE | VIEW} exprime deux instructions possibles : CREATE TABLE ou CREATE VIEW). Les signes [ et ] désignent le caractère facultatif d'une option (par exemple, CREATE TABLE Avion(...) [TABLESPACE USERS] exprime deux écri- tures possibles : CREATE TABLE Avion(...) TABLESPACE USERS et CREATE TABLE

Avion(É)).

Ce pictogramme introduit une définition, un concept ou une remarque importante. Il apparaît soit dans une partie thŽorique, soit dans une partie technique, pour souligner des instructions importantes ou la marche 2 suivre avec SQL. en garde. Il est principalement utilisŽ dans la partie consacrŽe 2 SQL. Ce pictogramme indique une astuce ou un conseil personnel. Ce pictogramme indique une commande ou option disponible uniquement 2 partir de la version 12c.

SQL pour Oracle

X© Éditions Eyrolles

Contact avec l'auteur et site Web

Si vous avez des remarques à formuler sur le contenu de cet ouvrage, n'hésitez pas à m'écrire

(christian.soutou@gmail.com). Vous trouverez sur le site d'accompagnement, accessible par www.editions-eyrolles.com, les compléments et errata, ainsi que le code de tous les exemples et les exercices corrigŽs.

© Éditions EyrollesXI

Table des matières

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

SQL, une norme, un succès . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

Modèle de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

Tables et donnŽes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

Les clŽs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Un peu dÕhistoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

Rachat de Sun (et de MySQL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Offre du moment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Notion de schŽma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Accgs 2 Oracle depuis Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

DŽtail dÕun numŽro de version. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Les clients SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

SQL*Plus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

SQL Developer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

SQL Data Modeler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Premiers pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Variables dÕenvironnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Ë propos des accents et jeux de caractgres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Partie I SQL de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

1 DŽfinition des donnŽes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Tables relationnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

CrŽation dÕune table (CREATE TABLE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Casse et commentaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Premier exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Contraintes de colonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Conventions recommandŽes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Types des colonnes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

Structure dÕune table (DESC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Commentaires stockŽs (COMMENT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Noms des objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Utilisation de SQL Developer Data Modeler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

Suppression des tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

SQL pour Oracle

XII© Éditions Eyrolles

2 Manipulation des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

Insertions d'enregistrements (INSERT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

Renseigner ou pas toutes les colonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Ne pas respecter des contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Dates/heures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Caractgres Unicode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

DonnŽes LOB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Séquences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

CrŽation dÕune sŽquence (CREATE SEQUENCE). . . . . . . . . . . . . . . . . . . . . . . . . . 51

Manipulation dÕune sŽquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Utilisation dÕune sŽquence dans un DEFAULT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

Modification dÕune sŽquence (ALTER SEQUENCE). . . . . . . . . . . . . . . . . . . . . . . . . 56

Visualisation dÕune sŽquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

Suppression dÕune sŽquence (DROP SEQUENCE). . . . . . . . . . . . . . . . . . . . . . . . . 58

Colonnes auto-incrŽmentŽes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Modifications de valeurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

Syntaxe (UPDATE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Modification dÕune ligne. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Modification de plusieurs lignes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Ne pas respecter des contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Dates et intervalles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

Suppressions d'enregistrements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

Instruction DELETE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

Instruction TRUNCATE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Intégrité référentielle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

CohŽrences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Contraintes c™tŽ Ç pgre È . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

Contraintes c™tŽ Ç fils È. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

ClŽs composites et nulles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

CohŽrence du fils vers le pgre. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

CohŽrence du pgre vers le fils. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

En rŽsumŽ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

3 Évolution d'un schéma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Renommer une table (RENAME) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Modifications structurelles (ALTER TABLE). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Ajouter des colonnes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Renommer des colonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Modifier le type des colonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Supprimer des colonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Colonnes UNUSED. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Colonne virtuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Colonnes invisibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

© Éditions EyrollesXIII

Table des matières

Modifications comportementales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

Ajout de contraintes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

Suppression de contraintes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

DŽsactivation de contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

RŽactivation de contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

Contraintes différées. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

Directives DEFERRABLE et INITIALLY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

Instructions SET CONSTRAINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

Instruction ALTER SESSION SET CONSTRAINTS . . . . . . . . . . . . . . . . . . . . . . . . . 94

Directives VALIDATE et NOVALIDATE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

Directive MODIFY CONSTRAINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

4 Interrogation des données. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

Généralités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

Syntaxe (SELECT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

Pseudo-table DUAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

Projection (éléments du SELECT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Extraction de toutes les colonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

Extraction de certaines colonnes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

Alias. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

Duplicatas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Expressions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Ordonnancement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

Substitutions conditionnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

Pseudo-colonne ROWID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

Pseudo-colonne ROWNUM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Insertion multiligne. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Limitation du nombre de lignes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

Restriction (WHERE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

OpŽrateurs de comparaison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

OpŽrateurs logiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

OpŽrateurs intŽgrŽs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

Fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

Caractgres. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

NumŽriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

Valeurs spŽciales pour les flottants. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

Fonctions pour les flottants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

Dates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

Conversions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

Autres fonctions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

Regroupements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

Fonctions de groupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

Ltude du GROUP BY et HAVING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

SQL pour Oracle

XIV© Éditions Eyrolles

Opérateurs ensemblistes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

OpŽrateur INTERSECT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

OpŽrateurs UNION et UNION ALL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

OpŽrateur MINUS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

Ordonner les rŽsultats. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

Produit cartŽsien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

Sous-interrogations dans la clause FROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

quotesdbs_dbs14.pdfusesText_20
[PDF] exercices corrigés pompes centrifuges pdf

[PDF] exercices corrigés processus de poisson

[PDF] exercices corrigés programmation evenementielle vb

[PDF] exercices corrigés programmation linéaire méthode du simplexe

[PDF] exercices corrigés programmation matlab pdf

[PDF] exercices corrigés proportionnalité 4ème pdf

[PDF] exercices corrigés propriétés colligatives

[PDF] exercices corrigés propriétés mécaniques des matériaux pdf

[PDF] exercices corrigés rapidité de modulation

[PDF] exercices corrigés rapprochement bancaire pdf

[PDF] exercices corrigés résistance des matériaux

[PDF] exercices corrigés sage comptabilité

[PDF] exercices corrigés sage saari comptabilité 100

[PDF] exercices corrigés saponification

[PDF] exercices corrigés sciences industrielles mpsi pdf