pl sql.pdf

Upload: h-boy-haddioui

Post on 30-Oct-2015

101 views

Category:

Documents


0 download

TRANSCRIPT

  • Oracle 10g

    Razvan Bizo

    PL/SQL pour

    faux-titre.indd 4 6/10/06 9:55:48

    Tsoft et Groupe Eyrolles, 2007, ISBN : 2-212-12056-7, ISBN 13 : 978-2-212-12056-1

  • Tsoft/Eyrolles PL/SQL pour Oracle10g 1-1

    Module 1 : Prsentation du PL/SQL

    Objectifs A la fin de ce module, vous serez mme deffectuer les tches suivantes :

    Dcrire la syntaxe PL/SQL. crire un bloc PL/SQL. Afficher les informations de dboguage. Utiliser Oracle SQL Developer pour crire des programmes SQL et PL/SQL.

    Contenu Pourquoi PL/SQL Sortie l'cran

    Architecture PL/SQL Oracle SQL Developer

    La syntaxe PL/SQL SQL Developer

    Structure de bloc Atelier

    Bloc imbriqu

    Larchitecture PL/SQL Le jeu de caractres Le bloc PL/SQL Sortie lcran Dboguage

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-2

    Pourquoi PL/SQL

    Module 23 : Prsentation PL/SQL - Diapo 23.2TSOFT - ORACLE 10g SQL et PL*SQL

    Pourquoi PL/SQL ?

    SQL

    SQL

    SQL

    SQL

    ifthen

    else

    end ifSQL

    SQL

    Le langage SQL est un langage "ensembliste", c'est--dire qu'il ne manipule qu'un ensemble de donnes satisfaisant des critres de recherche. PL/SQL est un langage "procdural", il permet de traiter de manire conditionnelle les donnes retournes par un ordre SQL.

    Le langage PL/SQL, abrviation de "Procedural Language extensions to SQL", comme son nom l'indique, tend SQL en lui ajoutant des lments, tels que :

    Les variables et les types. Les structures de contrle et les boucles. Les procdures et les fonctions. Les types d'objets et les mthodes. Ce ne sont plus des ordres SQL qui sont transmis un un au moteur de base de donnes Oracle, mais un bloc de programmation. Le traitement des donnes est donc interne la base, ce qui rduit considrablement le trafic entre celle-ci et l'application. Combin l'optimisation du moteur PL/SQL, cela diminue les changes rseau et augmente les performances globales de vos applications.

    Toutes les bases de donnes Oracle comportent un moteur d'excution PL/SQL. Comme Oracle est prsent sur un trs grand nombre de plates-formes matrielles, le PL/SQL permet une grande portabilit de vos applications.

    Le langage PL/SQL est simple d'apprentissage et de mise en uvre. Sa syntaxe claire offre une grande lisibilit en phase de maintenance de vos applications. De nombreux outils de dveloppement, en dehors de ceux d'Oracle, autorisent la programmation en PL/SQL dans la base de donnes.

    Ce chapitre prsente lenvironnement de dveloppement et lintgration du PL/SQL dans Oracle.

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-3

    Architecture PL/SQL

    Module 23 : Prsentation PL/SQL - Diapo 23.3TSOFT - ORACLE 10g SQL et PL*SQL

    Application clientApplication client

    Architecture PL/SQL

    Moteur SQLMoteur SQLSQL SQL

    PL/SQLPL/SQL Moteur PL/SQLMoteur PL/SQL

    BLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQL

    SQLSQLifthen

    else

    end if

    SQLSQL

    BLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQL

    SQLSQL

    Le moteur de base de donnes, Oracle, coordonne tous les appels en direction de la base. Le SQL et le PL/SQL comportent chacun un "moteur d'excution" associ, respectivement le SQL STATEMENT EXECUTOR et le PROCEDURAL STATEMENT EXECUTOR.

    Lorsque le serveur reoit un appel pour excuter un programme PL/SQL, la version compile du programme est charge en mmoire puis excute par les moteurs PL/SQL et SQL. Le moteur PL/SQL gre les structures mmoire et le flux logique du programme, tandis que le moteur SQL transmet la base les requtes de donnes.

    Le PL/SQL est utilis dans de nombreux produits Oracle, parmi lesquels :

    Oracle Forms et Oracle Reports ; Oracle Application Express Oracle Warehouse Builder ; Les programmes PL/SQL peuvent tre appels partir des environnements de dveloppement Oracle suivants :

    SQL*Plus ; Oracle Enterprise Manager; les prcompilateurs Oracle (tels que Pro*C, Pro*COBOL, etc.) ; Oracle Call Interface (OCI) ; Server Manager; Java Virtual Machine (JVM). Un bloc PL/SQL peut tre trait dans un outil de dveloppement Oracle (SQL*Plus, Oracle Forms, Oracle Reports). Dans ce cas, seules les instructions sont traites par le moteur PL/SQL embarqu dans l'outil de dveloppement, les ordres SQL incorpors dans les blocs PL/SQL sont toujours traits par la base de donnes.

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-4

    La syntaxe PL/SQL

    Module 23 : Prsentation PL/SQL - Diapo 23.4TSOFT - ORACLE 10g SQL et PL*SQL

    La syntaxe PL/SQL

    BLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQL

    SQLSQLifthen

    else

    end if

    SQLSQL

    BLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQL

    Tout langage de programmation possde une syntaxe, un vocabulaire et un jeu de caractres. Cette section prsente les caractres valides en PL/SQL ainsi que les oprateurs arithmtiques et relationnels quil accepte.

    Un programme PL/SQL est une srie de dclarations, chacune compose d'une ou plusieurs lignes de texte. Une ligne de texte est faite de combinaisons des caractres dcrits ci-aprs :

    Les lettres majuscules et minuscules : AZ et az Les chiffres entre 09 Les symboles suivants :

    ( ) + - * / < > = ! ~ ; : . @ % " ' # ^ & _ | { } ? [ ]

    Les mots rservs A ALL, ALTER, AND, ANY, ARRAY, ARROW, AS, ASC, AT B BEGIN, BETWEEN, BY C CASE, CHECK, CLUSTERS, CLUSTER, COLAUTH, COLUMNS,

    COMPRESS, CONNECT, CRASH, CREATE, CURRENT D DECIMAL, DECLARE, DEFAULT, DELETE, DESC, DISTINCT,

    DROP E ELSE, END, EXCEPTION, EXCLUSIVE, EXISTS F FETCH, FORM, FOR, FROM G GOTO, GRANT, GROUP H HAVING I IDENTIFIED, IF, IN, INDEXES, INDEX, INSERT, INTERSECT, INTO,

    IS L LIKE, LOCK M MINUS, MODE N NOCOMPRESS, NOT, NOWAIT, NULL O OF, ON, OPTION, OR, ORDER, OVERLAPS

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-5

    P PRIOR, PROCEDURE, PUBLIC R RANGE, RECORD, RESOURCE, REVOKE S SELECT, SHARE, SIZE, SQL, START, SUBTYPE T TABAUTH, TABLE, THEN, TO, TYPE U UNION, UNIQUE, UPDATE, USE V VALUES, VIEW, VIEWS W WHEN, WHERE, WITH

    Dans le langage PL/SQL comme dans SQL, les majuscules sont traites de la mme manire que les minuscules, except lorsquelles reprsentent la valeur d'une variable ou une constante de type chane de caractres. Certains de ces caractres, qu'ils soient seuls ou combins d'autres, ont une signification spciale en PL/SQL.

    Le langage PL/SQL propose deux types de commentaires :

    Un commentaire mono-ligne commence par deux tirets -- et prend fin par la fin de la ligne.

    SQL> SELECT NOM_CATEGORIE -- Commentaire mono-ligne 2 FROM CATEGORIES; NOM_CATEGORIE ------------------------- Boissons Condiments ...

    Un commentaire multi-lignes commence par /* et finit par */ . Tous les caractres compris entre ces deux symboles sont ignors par le compilateur.

    SQL> SELECT NOM_CATEGORIE /* 2 Commentaire muti-lignes 3 suite commentaire */ 4 FROM CATEGORIES; NOM_CATEGORIE ------------------------- Boissons Condiments ...

    Le langage PL/SQL est une srie de dclarations et instructions. Chaque instruction se termine par ; elle peut tre rpartie sur plusieurs lignes, afin de la rendre plus lisible.

    Il est prfrable de ne pas avoir plus dune instruction ou dclaration par ligne.

    Note

    Attention

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-6

    Structure de bloc

    Module 23 : Prsentation PL/SQL - Diapo 23.5TSOFT - ORACLE 10g SQL et PL*SQL

    Structure de bloc

    BLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQL

    ...DECLAREDECLAREDECLAREDECLAREDECLAREDECLAREDECLAREDECLARE

    BEGINBEGINBEGINBEGINBEGINBEGINBEGINBEGIN

    EXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTION

    END;END;END;END;END;END;END;END;

    ...

    ...

    Le PL/SQL est un langage structur. Chaque lment de base de votre application est une entit cohrente. Le bloc PL/SQL vous permet de reflter cette structure logique dans la conception physique de vos programmes.

    Les programmes PL/SQL sont crits sous forme de blocs de code dfinissant plusieurs sections comme la dclaration de variables, le code excutable et la gestion d'exceptions (erreurs). Le code PL/SQL peut tre stock dans la base sous forme d'un sous-programme dot d'un nom ou il peut tre cod directement dans SQL*Plus en tant que "bloc de code anonyme", c'est--dire sans nom. Lorsqu'il est stock dans la base, le sous-programme inclut une section d'en-tte dans laquelle il est nomm, mais qui contient galement la dclaration de son type et la dfinition d'arguments optionnels.

    La structure type dun bloc PL/SQL est la suivante :

    [DECLARE] ... BEGIN ... [EXCEPTION] ... END ;

    DECLARE La section DECLARE contient la dfinition et linitialisation des structures et des variables utilises dans le bloc. Elle est facultative si le programme na aucune variable.

    BEGIN La section corps du bloc contient les instructions du programme et la section de traitement des erreurs. Cette section est obligatoire et elle se termine par le mot cl END .

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-7

    EXCEPTION La section EXCEPTION contient linstruction de gestion des erreurs. Elle est facultative.

    Lorsque vous excutez une instruction SQL dans SQL*Plus, elle se termine par un point-virgule. II ne s'agit que de la terminaison de l'instruction, non d'un lment qui en est constitutif. A la lecture du point-virgule, SQL*Plus est inform que l'instruction est complte et l'envoie la base de donnes.

    Dans un bloc PL/SQL, tout au contraire, le point-virgule n'est pas un simple indicateur de terminaison, mais fait partie de la syntaxe mme du bloc. Lorsque vous spcifiez le mot-cl DECLARE ou BEGIN , SQL*Plus dtecte qu'il s'agit d'un bloc PL/SQL et non d'une instruction SQL. Il doit cependant savoir quand se termine le bloc. La barre oblique / , raccourci de la commande SQL*Plus RUN , lui en fournit l'indication.

    Instruction NULL prcise qu'aucune action ne doit tre entreprise et que l'excution du programme se poursuit normalement. Cest un moyen de rserver la place pour un ensemble de traitements futurs.

    SQL> begin 2 null; 3 end; 4 / Procdure PL/SQL termine avec succs.

    Dans lexemple prcdent, le bloc PL/SQL neffectue aucune opration. SQL> begin 2 DELETE DETAILS_COMMANDES WHERE NO_COMMANDE > 11070; 3 INSERT INTO CATEGORIES VALUES 4 ( 9,'Cosmtiques','Produits beauts' ); 5 COMMIT; 6 end; 7 / Procdure PL/SQL termine avec succs.

    Le langage PL/SQL peut contenir les instructions SQL de type Langage de Manipulation de Donnes, mais il ne peut comporter aucune instruction du Langage de Dfinition de Donnes.

    De plus, la gestion de la transaction est identique quon travaille en SQL ou en PL/SQL.

    Le mot cl PRAGMA Le mot cl PRAGMA signifie que le reste de l'ordre PL/SQL est une directive de compilation. Les pragmas sont values lors de la compilation, elles ne sont pas excutables.

    Une pragma est une instruction spciale pour le compilateur. Egalement appele pseudo-instruction, la pragma ne change pas la smantique d'un programme. Elle ne fait que donner une information au compilateur.

    Le langage PL/SQL contient les pragmas suivantes :

    Attention

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-8

    EXCEPTION_INIT indique au compilateur que l'on souhaite associer une exception dclare dans un programme un code d'erreur spcifique.

    RESTRICT_REFERENCES indique au compilateur un certain degr de puret pour pouvoir excuter une fonction stocke complexe directement dans un ordre SQL.

    SERIALLY_REUSABLE indique au moteur PL/SQL que les donnes de niveau package ne sont pas persistantes.

    AUTONOMOUS_TRANSACTION indique au compilateur que le bloc sexcute dans une transaction indpendante, une instruction COMMIT ou ROLLBACK excute dans le bloc nimpacte pas les autres transactions. Lexemple suivant montre lutilisation du bloc PL/SQL qui sexcute dans une transaction indpendante. La premire commande SQL efface les enregistrements de la table DETAILS_COMMANDES pour les numros de commandes suprieurs 11070. Le bloc PL/SQL insre un enregistrement dans la table CATEGORIES ; linsertion effectue dans une transaction indpendante est ensuite valide.

    Lannulation de leffacement des enregistrements de la table DETAILS_COMMANDES peut encore tre effectue.

    SQL> DELETE DETAILS_COMMANDES WHERE NO_COMMANDE > 11070; 40 ligne(s) supprime(s). SQL> declare 2 pragma autonomous_transaction; 3 begin 4 INSERT INTO CATEGORIES VALUES 5 ( 9,'Cosmtiques','Produits beauts' ); 6 COMMIT; 7 end; 8 / Procdure PL/SQL termine avec succs. SQL> ROLLBACK; Annulation (ROLLBACK) effectue. SQL> SELECT COUNT(*) FROM DETAILS_COMMANDES 2 WHERE NO_COMMANDE > 11070; COUNT(*) ---------- 40

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-9

    Bloc imbriqu

    Module 23 : Prsentation PL/SQL - Diapo 23.6TSOFT - ORACLE 10g SQL et PL*SQL

    Bloc imbriqu

    BLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQL

    ...DECLAREDECLAREDECLAREDECLAREDECLAREDECLAREDECLAREDECLAREBEGINBEGINBEGINBEGINBEGINBEGINBEGINBEGIN

    EXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTION

    END;END;END;END;END;END;END;END;

    ...

    ...

    BLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQL

    ...DECLAREDECLAREDECLAREDECLAREDECLAREDECLAREDECLAREDECLARE

    BEGINBEGINBEGINBEGINBEGINBEGINBEGINBEGIN

    EXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTION

    END;END;END;END;END;END;END;END;

    ...

    ...

    ...

    Le PL/SQL permet d'imbriquer ou d'encapsuler des blocs anonymes dans d'autres blocs PL/SQL. On peut galement imbriquer des blocs anonymes dans d'autres blocs anonymes plusieurs niveaux.

    Un bloc PL/SQL imbriqu l'intrieur d'un autre bloc PL/SQL peut tre appel :

    Bloc imbriqu Bloc secondaire Bloc enfant Sous-bloc Un bloc PL/SQL qui appelle un autre bloc PL/SQL peut tre appel bloc principal ou bien bloc parent.

    Le principal avantage, et l'une des raisons de l'utiliser, du bloc imbriqu est qu'il fournit une porte tous les objets et toutes les commandes de ce bloc. Vous pouvez utiliser cette porte pour amliorer le contrle que vous avez sur les actions effectues par votre programme.

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-10

    Sortie l'cran

    Module 23 : Prsentation PL/SQL - Diapo 23.7TSOFT - ORACLE 10g SQL et PL*SQL

    Sortie l'cran

    BLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQLBLOC PL/SQL

    ...DECLAREDECLAREDECLAREDECLAREDECLAREDECLAREDECLAREDECLAREBEGINBEGINBEGINBEGINBEGINBEGINBEGINBEGIN...

    EXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTIONEXCEPTION

    END;END;END;END;END;END;END;END;......dbms_output.put_line ...

    Le langage PL/SQL ne dispose d'aucune gestion intgre des entres/sorties. Il s'agit en fait d'un choix de conception, car l'affichage des valeurs de variables ou de structures de donnes n'est pas une fonction utile la manipulation des donnes stockes dans la base.

    La possibilit de grer les sorties a toutefois t introduite, sous la forme dune application intgre DBMS_OUTPUT ; elle est dcrite en dtail dans le chapitre concernant les applications standards Oracle.

    Lapplication DBMS_OUTPUT permet d'envoyer des messages depuis un bloc PL/SQL. La procdure PUT_LINE de cette application permet de placer des informations dans un tampon qui pourra tre lu par un autre bloc PL/SQL. Le principal intrt de ce package est de faciliter la mise au point des programmes.

    SQL*Plus, possde le paramtre SERVEROUTPUT qu'il faut activer, pour connatre les informations qui ont t crites dans le tampon, l'aide de la commande : SET SERVEROUTPUT ON [size taille ] Dans lexemple suivant, vous pouvez remarquer que, dans le bloc PL/SQL, il y a quatre ordres qui se terminent par un point virgule. La procdure PUT_LINE accepte comme argument, soit une expression de type chane de caractres, soit une expression numrique ou une expression de type date.

    SQL> SHOW SERVEROUTPUT serveroutput OFF SQL> begin 2 dbms_output.put_line( 'Bonjour'); 3 end; 4 / Procdure PL/SQL termine avec succs. SQL> SET SERVEROUTPUT ON

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-11

    SQL> begin 2 dbms_output.put_line( 'Bonjour utilisateur '||user|| 3 ' aujourd''hui est le '|| 4 to_char(sysdate,'dd month yyyy')); 5 dbms_output.put_line( uid); 6 dbms_output.put_line( user); 7 dbms_output.put_line( sysdate); 8 end; 9 / Bonjour utilisateur STAGIAIRE aujourd'hui est le 29 mai 2006 64 STAGIAIRE 29/05/06 Procdure PL/SQL termine avec succs.

    Vous pouvez visualiser le paramtre SERVEROUTPUT par la commande SQL*Plus SHOW . Ce paramtre est positionn par dfaut OFF . Attention, si les informations contenues dans le tampon dpassent la taille du tampon, le bloc va tre rejet avec un message derreur.

    Attention

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-12

    Oracle SQL Developer

    Module 23 : Prsentation PL/SQL - Diapo 23.8TSOFT - ORACLE 10g SQL et PL*SQL

    Oracle SQL Developer

    Il y a plusieurs outils qui permettent le dveloppement et le dboguage d'une application PL/SQL, chacun tant diversement dot d'avantages et d'inconvnients.

    Oracle SQL Developer est un environnement de dveloppement livr gratuitement par Oracle. Vous pouvez tlcharger le produit ladresse suivante :

    http://www.oracle.com/technology/products/database/sql_developer/index.html

    SQL Developer est dot des fonctionnalits suivantes :

    l'auto-formatage des instructions PL/SQL et SQL ;

    un dbogueur PL/SQL ;

    un navigateur de base de donnes ;

    le support des types d'objets d'Oracle;

    des modles de code ;

    Connexion la base de donnes SQL Developer peut supporter plusieurs connexions de base de donnes simultanes. Lorsque vous le lancez pour la premire fois, vous tablirez une connexion partir de menu File et New.

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-13

    Ds qu'elle est tablie, une connexion demeure active jusqu' ce que vous la fermiez explicitement en slectionnant File et Close.

    Une invite de connexion la base de donnes dans lequel vous pouvez mmoriser diffrents profils de connexion en y stockant l'identifiant utilisateur et les informations de connexion.

    Les profils de connexion sont automatiquement mmoriss pour un usage ultrieur, il est possible davoir en simultan des connexions multiples diffrentes bases de donnes.

    Vous utiliserez la fentre du navigateur d'objets pour visualiser les informations concernant les objets de base de donnes. Vous pourrez, si vous le souhaitez, ouvrir plusieurs fentres SQL*Plus pour chaque connexion.

    Vous pouvez galement fermer un diteur SQL*Plus ou un autre diteur comme tout document dans un environnement multi-documents.

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-14

    Navigation parmi les objets de base de donnes SQL Developer vous permet de naviguer parmi les objets types d'Oracle tels que les tables, les vues, les procdures, les packages etc. La slection des types d'objets dans le panneau situ gauche, dclenche leur affichage dans le panneau de droite qui montre le dtail.

    Vous pouvez modifier une table en cliquant sur le bouton :

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-15

    Il est galement possible de modifier les donnes dune table.

    Vous pouvez aussi rcuprer lordre LDD qui permet la cration de lobjet.

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-16

    SQL Developer

    Module 23 : Prsentation PL/SQL - Diapo 23.9TSOFT - ORACLE 10g SQL et PL*SQL

    SQL Developer

    SQL Developer vous permet douvrir plusieurs SQL*Worksheet, des fentres ddition permettant de concevoir et dexcuter des commandes SQL et PL/SQL.

    Un assistant de code Snippets, accessible via le menu View, met votre disposition une bibliothque de structures SQL et PL/SQL d'utilisation courante. Lorsque vous slectionnez une structure particulire, vous pouvez la faire glisser-dposer dans la fentre d'dition disponible.

    De la mme manire, vous pouvez insrer le nom dune colonne ou la requte complte dinterrogation dune table dans la fentre d'dition disponible.

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-17

    Lenvironnement de travail est un diteur contextuel qui vous permet davoir des aides contextuels pour lcriture du code.

    Vous pouvez excuter un script SQL globalement ou tout simplement une partie de ce script en effectuant une slection de la partie quon veut excuter.

    Vous pouvez galement excuter un script PL/SQL mais pour afficher le tampon, il faut activer le paramtre SERVEROUTPUT pour connatre les informations qui ont t crites dans le tampon.

  • Module 1 : Prsentation du PL/SQL

    Tsoft/Eyrolles PL/SQL pour Oracle10g 1-18

    Atelier

    Module 23 : Prsentation PL/SQL - Diapo 23.10TSOFT - ORACLE 10g SQL et PL*SQL

    La prsentation du PL/SQL

    Atelier 23

    Dure : 10 minutes

    Questions 1-1. Quelles sont les sections qui font partie dun bloc ?

    1-2. Quel est le rle de la section DECLARE ? 1-3. Quelles sont les syntaxes incorrectes ?

    A. declare begin NULL;begin NULL;begin NULL; end;end;end;

    B. declare NULL;begin NULL;begin NULL;end;end;end; C. declare begin NULL;begin NULL;begin NULL;end;end; D. declare begin NULL;begin begin NULL;end;end;end; E. declare begin NULL;begin NULL;begin NULL;

    end;NULL;end;NULL;end; 1-4. Quel est le symbole de fin dinstruction en PL/SQL ?

    A. . B. : C. ; D. !

    1-5. Quelles sont les syntaxes qui reprsentent des commentaires en PL/SQL ?

    A. /* Commentaire */ B. -- Commentaire --