Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
site:enseignement:licence:3i009:tme_triggers [18/12/2017 09:41] hubert [Rappel de la syntaxe PL/SQL] |
site:enseignement:licence:3i009:tme_triggers [11/12/2018 09:29] (Version actuelle) hubert [Travail à faire] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
{{indexmenu_n>11}} | {{indexmenu_n>11}} | ||
- | ====== TME 10 Triggers ====== | + | ====== TME 11-a Triggers ====== |
Sous Oracle, le bloc d’instructions d’un trigger est un bloc PL/SQL. | Sous Oracle, le bloc d’instructions d’un trigger est un bloc PL/SQL. | ||
Dans ce TME nous allons utiliser un sous-ensemble minimal de PL/SQL pour définir et modifier des variables | Dans ce TME nous allons utiliser un sous-ensemble minimal de PL/SQL pour définir et modifier des variables | ||
Ligne 65: | Ligne 65: | ||
- | ** Limitations ** | + | ** Limitations : ** |
- | Un trigger AFTER déchenché après un update (ou un insert) de la table T n'est pas autorisé à modifier la table T (ne pas écrire d'instruction ''update'' dans le corps du trigger). Pour palier cette limitation, utiliser un trigger BEFORE. | + | Un trigger AFTER déchenché après un update (ou un insert) de la table T n'est pas autorisé à modifier la table T (ne pas écrire d'instruction ''update T'' dans le corps du trigger). Pour palier cette limitation, utiliser un trigger BEFORE. |
Ligne 90: | Ligne 90: | ||
DROP TABLE INSCRIPTION; | DROP TABLE INSCRIPTION; | ||
CREATE TABLE INSCRIPTION ( | CREATE TABLE INSCRIPTION ( | ||
- | noEtudiant smallint, | + | noEtud smallint, |
noTD smallint, | noTD smallint, | ||
codeUE varchar(10), | codeUE varchar(10), | ||
- | PRIMARY KEY (noEtudiant, codeUE)) ; | + | PRIMARY KEY (noEtud, codeUE)) ; |
</code> | </code> | ||