home 
 
 
 
ennl
 
Home
A propos
Services
Cours
Ressources
Contacts
MyABIS
C
Tous les coursbalkjeGénéralités » Introduction HW & SW » Soft skills » Cycles completsSystèmes d’exploitation » MVS - z/OS » UNIX - Linux - AIX » Mac OS X » iPad et iPhone iOSBases de données et middleware » Relational databases & SQL » DB2 for z/OS » DB2 for LUW » Oracle » SQL Server » MySQL & MariaDB » IMS » CICS » IBM MQ » WebSphere » Big data et analyticsDéveloppement d’applications » Méthodiques et techniques » TOGAF » PRINCE2 » Agile et Scrum » Les langages de programmation » Internet development » Object Oriented systems » Java » Development tools » SAS » XML » SOA & web servicesGestion de système » ITIL » SecuritybalkjeEn pratiqueInscriptions 
Développement d'applications avec SQL PL

Objectif

Depuis la version 9, DB2 a massivement étendu son support du SQL 'Procedural Language', SQL PL en bref. Maintenant à peu près toutes les possibilités syntaxiques de la spécification standard d'SQL pour la logique procédurale sont supportées. Récemment, DB2 supporte aussi le type "ARRAY", seulement en SQL PL.

Aussi MySQL 5 supporte SQL PL pour l'implémentation des procédures stockées, des triggers, et des fonctions définies (UDF). Ensemble avec PostgreSQL, DB2 et MySQL fonctionnent ainsi comme pionniers pour l'implémentation des "Persistent Stored Modules" (PSM) du standard SQL en ISO et ANSI (depuis SQL:1999).

Malheureusement, Oracle utilise une autre langue programmatoire procédurale: PL/SQL (voir Développement d'applications avec PL/SQL), qui n'est pas traitée dans ce cours-ci. Aussi Transact-SQL, utilisé par SQL Server, n'est pas compatible avec SQL PL.

SQL PL est particulièrement utile pour créer des procédures stockées, qui remplaceront de plus en plus les applications qui auparavant ont été principalement écrites en (pour z/OS) COBOL, PL/I REXX, (pour Unix) Java, C, C++, et (pour MS-Windows) Java ou C#. SQL PL deviendra ainsi la langue programmatoire par excellence pour intégrer la logique applicative avec "embedded" SQL. En DB2, ceci implique en outre que la procédure sera de l'SQL statique: interprété une seule fois, exécuté plusieures fois, ce qui est important pour la performance.

Ce cours traite donc d'abord la langue programmatoire SQL PL; tous les détails et possibilités syntaxiques seront traités en grand détail. Nous examinons bien entendu l'interaction entre les éléments de l'environnement programmatoire (comme les variables, le "program flow", la manipulation d'exceptions) et le DML comme les instructions SELECT ou les curseurs. Pendant le cours, les participants auront l'occasion de développer des procédures stockées en SQL PL, soit en DB2 pour z/OS, soit en DB2 pour LUW, soit en PostgreSQL, soit en MySQL, afin de se trouver à l'aise avec ce nouveau matériel.

Lors de ce cours,

  • les participants connaîtront la syntaxe de base de la langue programmatoire SQL PL;
  • on pourra développer, corriger, et exécuter de nouveaux programmes;
  • on saura ce qui est important quand on récrira un programme existant dans une différente langue programmatoire;
  • les participants sauront utiliser des curseurs at des "exception handlers" d'une manière intelligente.

Contenu

  • Introduction SQL PL
  • Variables

déclaration, initialisation, usage; blocs BEGIN ... END

  • Contrôle du déroulement de programmes

structures conditionnelles IF...THEN...ELSE; CASE;

itérations: WHILE..DO loop • FOR...DO loop • ITERATE • REPEAT...UNTIL • LOOP • cursor-based FOR-loop

  • Travailler avec des données de la base de données; curseurs

SELECT INTO • déclaration et utilisation des curseurs • parametrisation • insert, delete, update 'where current of'

  • Traitement des erreurs

exceptions prédéfinis • déroulement du programme à l'aide d'exceptions • SIGNAL • GET DIAGNOSTICS

  • Objets procédurales

fonctions scalaires • procédures SQL • triggers; instruction SQL CALL;

possibilités pour la déclaration des paramètres et des 'locators'; options comme 'commit on return'

PREPARE et EXECUTE d'une requête construite dynamiquement

 

Participants

Ce cours s'adresse en premier lieu aux programmeurs d'applications et aux développeurs des programmes se servant de DB2 ou MySQL, et qui veulent apprendre comment écrire ce genre de programmes en SQL PL.

Également, les DBAs peuvent agrandir pendant ce cours leur expérience pour écrire ou installer des procédures stockées, des triggers (déclencheurs) ou des fonctions scalaires, ou pour automatiser les tâches de DBA d'une façon assez simple.

Connaissances préalables

De l'expérience avec SQL et avec DB2 (cf. DB2 for z/OS: cours de base ou DB2 for LUW: cours de base), MySQL (cf MySQL & MariaDB: cours de base) ou PostgreSQL est conseillé. La connaissance d'une autre langue programmatoire procédurale (comme COBOL, PL/I, REXX, le Java, C, ...) peut être un avantage.

Pédagogie

Répartition d'exposés théoriques et de travaux pratiques.

Formateurs

Peter Vanroose.

Durée

2 jours.

Calendrier

Vous pouvez vous inscrire en cliquant sur une date
dateduréelang.  lieu  prix
23 Nov2?Leuven  (BE)1000 EUR  (excl. TVA) 

Reviews

     
Beaucoup de pratique avec explication et aide constante permettent un apprentissage rapide (, )
     
interessante cursus. Misschien spreiden over 3 dagen zodat de oefeningen kunnen afgewerkt worden. Ofwel de oefeningen wat simpeler houden (, )
     
Goede cursus, goede oefeningen (, )
     
uitstekend (, )
     
Cours avec une bonne approche par support aux exercices. Formateur maitrisant son sujet. (, )
     
zeer leerrijke cursus (, )
     
cursus inhoud goed voor een eerste verkenning met Sp's, triggers en udf. De stof en oefeningen gaan veel verder, maar daar kom je in t algemeen niet aan toe (, )
     
Voldoende voor mijn behoefte aan kennis (, )
     
Programmation de stored-procedure (, )
     
Correct mais un peu trop de temps pour la pratique. (, )

Rafraîchissez cette page pour voir d'autres commentaires.