[{"data":1,"prerenderedAt":45},["ShallowReactive",2],{"course-oracle-sql-et-pl-sql":3,"highlight-sql-CREATE OR REPLACE PR":44},{"id":4,"name":5,"slug":6,"location":7,"targetAudienceFormatMarkdown":8,"prerequisitesFormatMarkdown":9,"objectivesFormatMarkdown":10,"descriptionFormatMarkdown":11,"teachingMethodsFormatMarkdown":12,"teachingResourcesFormatMarkdown":13,"evaluationMethodsFormatMarkdown":14,"accessibilityFormatMarkdown":15,"accessMethodsFormatMarkdown":16,"minimumParticipants":7,"maximumParticipants":7,"duration":17,"reference":18,"trainerType":7,"updated_at":19,"created_at":20,"price":21,"organizationMode":22,"theme":25,"code":29,"tags":34,"metadata":35},"/api/courses/0aff1a79-b298-11f1-a993-d8ca06000363","Oracle : SQL et PL/SQL","oracle-sql-et-pl-sql",null,"Développeurs, analystes, administrateurs débutants sur Oracle, intégrateurs d'applications.","Connaissance des bases du langage SQL.","Développer requêtes, procédures stockées et déclencheurs en SQL et PL/SQL.","--day1--\n\n## SQL Oracle\n\n-   Spécificités du dialecte Oracle et types de données propres\n-   Fonctions Oracle usuelles : chaînes, dates, conversions, valeurs nulles\n-   Expressions conditionnelles et fonctions analytiques Oracle\n-   Requêtes hiérarchiques et opérateurs spécifiques\n-   Dictionnaire de données et vues système utiles\n-   Travaux pratiques : requêtes Oracle sur le schéma fil rouge et exploration du dictionnaire\n\n--break--\n\n## Manipulation des données et transactions\n\n-   Insertion, modification, suppression, fusion de lignes\n-   Transactions : validation, annulation, points de sauvegarde\n-   Cohérence en lecture et modèle de verrouillage Oracle\n-   Contraintes d'intégrité et gestion des violations\n-   Séquences, vues et synonymes\n-   Travaux pratiques : mise en œuvre de traitements transactionnels avec gestion des contraintes\n\n--day2--\n\n## Bases du PL/SQL\n\n-   Structure d'un bloc : déclaration, exécution, exception\n-   Variables, types, ancrage sur les colonnes de tables\n-   Structures de contrôle : conditions, boucles\n-   Interaction avec SQL dans le code PL/SQL\n-   Sortie et débogage élémentaire\n-   Travaux pratiques : écriture de blocs PL/SQL réalisant des traitements de données\n\n--break--\n\n## Curseurs et collections\n\n-   Curseurs implicites et explicites, attributs de curseur\n-   Boucles sur curseur et curseurs paramétrés\n-   Collections : tableaux associatifs, tables imbriquées, varrays\n-   Traitement par lots et opérations en masse\n-   Impact sur les performances et bonnes pratiques\n-   Travaux pratiques : traitement en masse d'un volume important de lignes avec mesure des gains\n\n--day3--\n\n## Gestion des erreurs et modularité\n\n-   Exceptions prédéfinies, définies par l'utilisateur, propagation\n-   Journalisation des erreurs et transactions autonomes\n-   Procédures et fonctions stockées : paramètres, droits d'exécution\n-   Packages : spécification, corps, variables de package, surcharge\n-   Dépendances entre objets et recompilation\n-   Travaux pratiques : construction d'un package complet avec gestion structurée des erreurs\n\n--break--\n\n## Déclencheurs et code avancé\n\n-   Déclencheurs de table : niveaux, ordre, restrictions\n-   Déclencheurs de vue, de schéma et système\n-   Cas d'usage légitimes et abus fréquents des déclencheurs\n-   SQL dynamique : intérêt, syntaxe, risques d'injection\n-   Code invoquant des services externes\n-   Travaux pratiques : mise en place de déclencheurs d'audit et de traitements dynamiques sécurisés\n\n--day4--\n\n## Performance du code PL/SQL\n\n-   Alternance entre moteur SQL et moteur PL/SQL et coût associé\n-   Traitements ensemblistes plutôt que ligne à ligne\n-   Mise en cache de résultats et fonctions déterministes\n-   Profilage du code et identification des points chauds\n-   Bonnes pratiques d'écriture pour la maintenabilité\n-   Travaux pratiques : optimisation d'un traitement PL/SQL lent fourni par le formateur\n\n--break--\n\n## Mise en pratique et certification\n\n-   Organisation du code dans un projet et gestion des versions\n-   Tests des objets PL/SQL et jeux de données\n-   Documentation et conventions d'équipe\n-   Interaction avec les applications clientes\n-   Préparation aux certifications Oracle d'entrée de parcours (certification en option)\n-   Travaux pratiques : réalisation complète d'un module applicatif PL/SQL et revue collective","Présentiel, distanciel, hybride","Les supports pédagogiques sont remis aux stagiaires sous format numérique et/ou papier selon les modalités de la formation.\n\nIls comprennent des supports de cours, des présentations, des fiches pratiques, des études de cas, des exercices applicatifs ainsi que des QCM d’entraînement selon la formation. (adapté au choix du formateur)\n\nLes formations s’appuient sur des moyens techniques adaptés : ordinateurs, logiciels professionnels, connexion internet, écran ou vidéoprojecteur, ainsi que des outils collaboratifs et de visioconférence pour les formations à distance.\n\nL’ensemble des supports pédagogiques est accessible pendant et après la formation afin de favoriser l’appropriation et la mise en pratique des compétences acquises.","En amont de la formation, un recueil des besoins permet de récolter des informations sur le stagiaire et ses attentes. L’évaluation se fait en cours de formation, par des études de cas ou des travaux pratiques. En fin de formation, par un questionnaire d’auto-évaluation et/ou un examen.\n\nUn suivi de qualité est effectué grâce à nos sessions en groupe restreint (entre 2 et 9 participants maximum). Le stagiaire émargera par demi-journée et recevra une attestation de formation.","Nous informons l’ensemble de nos clients et stagiaires que nous sommes dans la capacité d’adapter les sessions selon les handicaps et les situations spécifiques. Nous nous engageons à répondre à toutes vos demandes sous un délai de 48h ouvré.","Si l’une de nos formations vous intéresse, contactez-nous au +33 4 93 65 34 24 ou à l’adresse mail contact@m2g-intellect.fr. Selon votre besoin et vos attentes, nous organiserons un échange téléphonique avec le formateur pressenti afin d’adapter la formation et ses modules, puis nous vous adresserons un devis.\n\nLes dates de la formation seront à convenir sous 30 jours maximum.","28.00","L1-DAT-05","2026-09-18T09:45:10+00:00","2026-09-17T15:02:31+00:00","2660.00",{"id":23,"name":24},"/api/organization_mode_types/6","HYBRID",{"id":26,"name":27,"slug":28},"/api/themes/0ac0e95d-b298-11f1-a993-d8ca06000363","Bases de données, outils décisionnels, Big Data et Cloud computing","bases-de-donnees-outils-decisionnels-big-data-et-cloud-computing",{"id":30,"label":31,"domain":32},"/api/training_specialities/163","326 - Informatique, traitement de l’information, réseaux de transmission des données",{"label":33},"32 - Communication et information",[],{"desc-accroche":36,"Description":37,"icon-color":38,"icon-name":39,"code-langage":40,"code-snippet":41,"courte-description":42,"titre-accroche":43},"Maîtrisez les spécificités du SQL Oracle puis la programmation PL/SQL : blocs anonymes, curseurs, gestion des exceptions, procédures et fonctions stockées, packages et déclencheurs (triggers).","Cette formation conduit les participants des requêtes SQL propres à Oracle jusqu'à une maîtrise opérationnelle du langage PL/SQL. Elle traite d'abord les spécificités du SQL Oracle (fonctions, hiérarchies avec CONNECT BY, gestion des dates), puis développe la programmation PL/SQL : structure des blocs anonymes, variables et types composés, curseurs explicites et implicites, gestion structurée des exceptions. La seconde partie couvre l'écriture de procédures et fonctions stockées, leur regroupement en packages pour structurer le code métier, ainsi que la création de déclencheurs (triggers) pour automatiser des traitements au niveau de la base. Le déroulé et les exercices préparent aux certifications d'entrée du parcours Oracle. Cette formation s'adresse aux développeurs, analystes et administrateurs débutants sur Oracle, ainsi qu'aux intégrateurs d'applications.","#C74634","mdi:database-edit","sql","CREATE OR REPLACE PROCEDURE maj_solde(p_id_compte IN NUMBER, p_montant IN NUMBER) IS\nBEGIN\n  UPDATE comptes SET solde = solde + p_montant WHERE id_compte = p_id_compte;\n  IF SQL%ROWCOUNT = 0 THEN\n    RAISE_APPLICATION_ERROR(-20001, 'Compte introuvable');\n  END IF;\n  COMMIT;\nEND;\n/","Formation Oracle SQL et PL/SQL : requêtes spécifiques au moteur, blocs PL/SQL, procédures, packages et déclencheurs, en préparation aux certifications d'entrée du parcours Oracle.","Développez des requêtes, procédures stockées et déclencheurs sur Oracle grâce à un parcours complet du SQL au PL/SQL.","\u003Cpre class=\"hljs\">\u003Ccode class=\"language-sql\">\u003Cspan class=\"hljs-keyword\">CREATE\u003C/span> \u003Cspan class=\"hljs-keyword\">OR\u003C/span> REPLACE \u003Cspan class=\"hljs-keyword\">PROCEDURE\u003C/span> maj_solde(p_id_compte \u003Cspan class=\"hljs-keyword\">IN\u003C/span> NUMBER, p_montant \u003Cspan class=\"hljs-keyword\">IN\u003C/span> NUMBER) \u003Cspan class=\"hljs-keyword\">IS\u003C/span>\n\u003Cspan class=\"hljs-keyword\">BEGIN\u003C/span>\n  \u003Cspan class=\"hljs-keyword\">UPDATE\u003C/span> comptes \u003Cspan class=\"hljs-keyword\">SET\u003C/span> solde \u003Cspan class=\"hljs-operator\">=\u003C/span> solde \u003Cspan class=\"hljs-operator\">+\u003C/span> p_montant \u003Cspan class=\"hljs-keyword\">WHERE\u003C/span> id_compte \u003Cspan class=\"hljs-operator\">=\u003C/span> p_id_compte;\n  IF \u003Cspan class=\"hljs-keyword\">SQL\u003C/span>\u003Cspan class=\"hljs-operator\">%\u003C/span>ROWCOUNT \u003Cspan class=\"hljs-operator\">=\u003C/span> \u003Cspan class=\"hljs-number\">0\u003C/span> \u003Cspan class=\"hljs-keyword\">THEN\u003C/span>\n    RAISE_APPLICATION_ERROR(\u003Cspan class=\"hljs-number\">-20001\u003C/span>, \u003Cspan class=\"hljs-string\">&#x27;Compte introuvable&#x27;\u003C/span>);\n  \u003Cspan class=\"hljs-keyword\">END\u003C/span> IF;\n  \u003Cspan class=\"hljs-keyword\">COMMIT\u003C/span>;\n\u003Cspan class=\"hljs-keyword\">END\u003C/span>;\n\u003Cspan class=\"hljs-operator\">/\u003C/span>\u003C/code>\u003C/pre>",1789717726848]