<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>UD09. Programació amb PL/SQL on Bases de dades · DAM / DAW</title><link>https://lorenalresusta.github.io/BBDD/val/ud09-plsql/</link><description>Recent content in UD09. Programació amb PL/SQL on Bases de dades · DAM / DAW</description><generator>Hugo</generator><language>ca-valencia</language><copyright>Apunts del mòdul 0484 Bases de dades · Curs 2026/27</copyright><atom:link href="https://lorenalresusta.github.io/BBDD/val/ud09-plsql/index.xml" rel="self" type="application/rss+xml"/><item><title>Programació de la base de dades amb PL/SQL</title><link>https://lorenalresusta.github.io/BBDD/val/ud09-plsql/ud09-teoria/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lorenalresusta.github.io/BBDD/val/ud09-plsql/ud09-teoria/</guid><description>&lt;h1 id="ud09--programació-de-la-base-de-dades-amb-plsql"&gt;UD09 · Programació de la base de dades amb PL/SQL&lt;a class="anchor" href="#ud09--programaci%c3%b3-de-la-base-de-dades-amb-plsql" aria-label="Link"&gt;&lt;/a&gt;&lt;/h1&gt;&#10;&lt;h2 id="resum-del-tema"&gt;Resum del tema&lt;a class="anchor" href="#resum-del-tema" aria-label="Link"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;Fins ara, la lògica de les nostres tasques vivia &lt;strong&gt;fora&lt;/strong&gt; de la base de dades: en un guió &lt;code&gt;.sql&lt;/code&gt; que llançàvem a mà o en l&amp;rsquo;aplicació que consulta Oracle. Això funciona mentre la tasca siga una seqüència de sentències. Deixa de funcionar quan cal &lt;strong&gt;decidir&lt;/strong&gt; (té l&amp;rsquo;alumne faltes suficients per a perdre l&amp;rsquo;avaluació contínua?), &lt;strong&gt;repetir&lt;/strong&gt; (recórrer tots els alumnes d&amp;rsquo;un grup), &lt;strong&gt;reaccionar a un error&lt;/strong&gt; (què faig si el mòdul no existix?) o &lt;strong&gt;garantir una regla&lt;/strong&gt; que ningú puga saltar-se, entre elles les que a la UD03 vam anomenar &lt;em&gt;restriccions que el model lògic no pot expressar&lt;/em&gt;.&lt;/p&gt;</description></item><item><title>Programació amb PL/SQL - Pràctiques</title><link>https://lorenalresusta.github.io/BBDD/val/ud09-plsql/ud09-practicas/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lorenalresusta.github.io/BBDD/val/ud09-plsql/ud09-practicas/</guid><description>&lt;h1 id="ud09--pràctiques"&gt;UD09 · Pràctiques&lt;a class="anchor" href="#ud09--pr%c3%a0ctiques" aria-label="Link"&gt;&lt;/a&gt;&lt;/h1&gt;&#10;&lt;div class="bd-ra"&gt;&#10; &lt;div class="bd-ra-head"&gt;Resultats d&amp;#39;aprenentatge i criteris d&amp;#39;avaluació&lt;/div&gt;&lt;details class="bd-ra-item"&gt;&#10; &lt;summary&gt;&lt;span class="bd-ra-code"&gt;RA5&lt;/span&gt; Desenvolupa procediments emmagatzemats avaluant i utilitzant les sentències del llenguatge incorporat en el sistema gestor de bases de dades. &lt;span class="bd-ra-count"&gt;10 CE&lt;/span&gt;&lt;/summary&gt;&#10; &lt;ul&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA5.a&lt;/span&gt; S&amp;#39;han identificat les diverses formes d&amp;#39;automatitzar tasques.&lt;/li&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA5.b&lt;/span&gt; S&amp;#39;han reconegut els mètodes d&amp;#39;execució de guions.&lt;/li&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA5.c&lt;/span&gt; S&amp;#39;han identificat les eines disponibles per a editar guions.&lt;/li&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA5.d&lt;/span&gt; S&amp;#39;han definit i utilitzat guions per a automatitzar tasques.&lt;/li&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA5.e&lt;/span&gt; S&amp;#39;ha fet ús de les funcions proporcionades pel sistema gestor.&lt;/li&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA5.f&lt;/span&gt; S&amp;#39;han definit procediments i funcions d&amp;#39;usuari.&lt;/li&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA5.g&lt;/span&gt; S&amp;#39;han utilitzat estructures de control de flux.&lt;/li&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA5.h&lt;/span&gt; S&amp;#39;han definit esdeveniments i disparadors.&lt;/li&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA5.i&lt;/span&gt; S&amp;#39;han utilitzat cursors.&lt;/li&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA5.j&lt;/span&gt; S&amp;#39;han utilitzat excepcions.&lt;/li&gt;&lt;/ul&gt;&#10; &lt;/details&gt;&lt;details class="bd-ra-item"&gt;&#10; &lt;summary&gt;&lt;span class="bd-ra-code"&gt;RA4&lt;/span&gt; Modifica la informació emmagatzemada en la base de dades utilitzant assistents, eines gràfiques i el llenguatge de manipulació de dades. &lt;span class="bd-ra-count"&gt;2 CE&lt;/span&gt;&lt;/summary&gt;&#10; &lt;ul&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA4.d&lt;/span&gt; S&amp;#39;han dissenyat guions de sentències per a dur a terme tasques complexes.&lt;/li&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA4.h&lt;/span&gt; S&amp;#39;han adoptat mesures per a mantindre la integritat i consistència de la informació.&lt;/li&gt;&lt;/ul&gt;&#10; &lt;/details&gt;&lt;details class="bd-ra-item"&gt;&#10; &lt;summary&gt;&lt;span class="bd-ra-code"&gt;RA6&lt;/span&gt; Dissenya models relacionals normalitzats interpretant diagrames entitat/relació. &lt;span class="bd-ra-count"&gt;1 CE&lt;/span&gt;&lt;/summary&gt;&#10; &lt;ul&gt;&lt;li&gt;&lt;span class="bd-ce-code"&gt;RA6.h&lt;/span&gt; S&amp;#39;han analitzat i documentat les restriccions que no poden plasmar-se en el disseny lògic.&lt;/li&gt;&lt;/ul&gt;&#10; &lt;/details&gt;&lt;/div&gt;&#10;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;Pràctica&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;Tipus&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;Nivell&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;CE principals&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a href="#pr%c3%a0ctica-91--primers-blocs-lexpedient-dun-alumne"&gt;9.1 Primers blocs: l&amp;rsquo;expedient d&amp;rsquo;un alumne&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Guiada&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;●○○&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;RA5.b, RA5.c, RA5.e, RA5.g&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a href="#pr%c3%a0ctica-92--biblioteca-de-funcions-dedugest"&gt;9.2 Biblioteca de funcions d&amp;rsquo;EduGest&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Guiada&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;●●○&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;RA5.e, RA5.f&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a href="#pr%c3%a0ctica-93--procediment-de-matr%c3%adcula-amb-excepcions"&gt;9.3 Procediment de matrícula amb excepcions&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Guiada&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;●●○&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;RA5.f, RA5.g, RA5.j&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a href="#pr%c3%a0ctica-94--cursors-butlletins-i-informes"&gt;9.4 Cursors: butlletins i informes&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Autònoma&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;●●○&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;RA5.g, RA5.i&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a href="#pr%c3%a0ctica-95--disparadors-dintegritat-i-auditoria"&gt;9.5 Disparadors d&amp;rsquo;integritat i auditoria&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Guiada&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;●●●&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;RA5.h, RA6.h, RA4.h&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a href="#pr%c3%a0ctica-96--repte-la-taula-mutant"&gt;9.6 Repte: la taula mutant&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Repte&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;●●●&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;RA5.h, RA5.i&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a href="#pr%c3%a0ctica-97--tasques-programades"&gt;9.7 Tasques programades&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Guiada&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;●●○&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;RA5.a, RA5.d, RA5.h&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a href="#pr%c3%a0ctica-98--repte-el-paquet-de-secretaria"&gt;9.8 Repte: el paquet de secretaria&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Repte&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;●●●&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;RA5.d, RA5.f, RA5.j, RA4.d&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;a href="#projecte-edugest--ud09-l%c3%b2gica-en-el-servidor"&gt;Projecte EduGest · UD09&lt;/a&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Projecte&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;●●●&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;RA5 complet, RA6.h&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;blockquote class='book-hint important'&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Treballa com a &lt;code&gt;EDUGEST&lt;/code&gt; sobre les dades originals (scripts 01 i 02).&lt;/li&gt;&#10;&lt;li&gt;Activa l&amp;rsquo;eixida en cada sessió: &lt;code&gt;SET SERVEROUTPUT ON&lt;/code&gt; (en SQL Developer, també &lt;em&gt;Veure → Eixida de DBMS&lt;/em&gt; i el botó &lt;strong&gt;+&lt;/strong&gt; per a la connexió).&lt;/li&gt;&#10;&lt;li&gt;Guarda &lt;strong&gt;cada&lt;/strong&gt; subprograma en el seu propi fitxer &lt;code&gt;.sql&lt;/code&gt; acabat en &lt;code&gt;/&lt;/code&gt;. Així podràs recompilar-lo i versionar-lo.&lt;/li&gt;&#10;&lt;/ul&gt;&lt;/blockquote&gt;&lt;hr&gt;&#10;&lt;h2 id="pràctica-91--primers-blocs-lexpedient-dun-alumne"&gt;Pràctica 9.1 · Primers blocs: l&amp;rsquo;expedient d&amp;rsquo;un alumne&lt;a class="anchor" href="#pr%c3%a0ctica-91--primers-blocs-lexpedient-dun-alumne" aria-label="Link"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;div class="bd-practica bd-practica--guiada"&gt;&#10; &lt;div class="bd-practica-top"&gt;&#10; &lt;span class="bd-practica-num"&gt;Pràctica 9.1&lt;/span&gt;&#10; &lt;span class="bd-pill bd-pill--guiada"&gt;Guiada&lt;/span&gt;&#10; &lt;/div&gt;&#10; &lt;dl class="bd-practica-meta"&gt;&lt;div&gt;&lt;dt&gt;Durada&lt;/dt&gt;&lt;dd&gt;2 sessions&lt;/dd&gt;&lt;/div&gt;&lt;div&gt;&lt;dt&gt;Dificultat&lt;/dt&gt;&lt;dd&gt;&lt;span class="bd-nivel" aria-label="Nivell 1 de 3"&gt;&lt;i class="on"&gt;&lt;/i&gt;&lt;i class=""&gt;&lt;/i&gt;&lt;i class=""&gt;&lt;/i&gt;&lt;/span&gt;&lt;/dd&gt;&lt;/div&gt;&lt;div&gt;&lt;dt&gt;RA / CE&lt;/dt&gt;&lt;dd&gt;RA5: b, c, e, g&lt;/dd&gt;&lt;/div&gt;&lt;div&gt;&lt;dt&gt;Programari&lt;/dt&gt;&lt;dd&gt;Oracle 26ai · SQL Developer i SQLcl&lt;/dd&gt;&lt;/div&gt;&lt;div&gt;&lt;dt&gt;Lliurament&lt;/dt&gt;&lt;dd&gt;p9_1.sql &amp;#43; eixida&lt;/dd&gt;&lt;/div&gt;&lt;/dl&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;h4 id="objectiu"&gt;Objectiu&lt;a class="anchor" href="#objectiu" aria-label="Link"&gt;&lt;/a&gt;&lt;/h4&gt;&#10;&lt;p&gt;Escriure i executar blocs anònims amb variables, consultes &lt;code&gt;SELECT INTO&lt;/code&gt;, funcions del sistema gestor i estructures de control.&lt;/p&gt;</description></item></channel></rss>