Module: SGBD - TP 3 (PL/SQL)

1/2
100%

Module : SGBD

TP 3 (PL/SQL)

Exercice 1

1- Créer la table Article et la remplir avec les données suivantes (Num\_Article est une clé primaire) :

| | | | |

| --- | --- | --- | --- |

| Num\_Article | Designation | Prix\_Unitaire | Qte\_Stock |

| 1 | Tv | 690 | 50 |

Publicité

| 2 | Radio | 130 | 10 |

| 3 | GSM | 350 | 20 |

| 4 | PC | 990 | 39 |

Exercice 2

Ecrire un bloc PL/SQL qui permet de changer la désignation du produit en ‘GSM’ pour le Num\_Article = 2, si sa quantité en stock est supérieur à 5. Ensuite afficher le message « désignation changé » s’il y a eu changement et « Pas de changement » s’il n’y a pas eu de changement.

Exercice 3

Ecrire un bloc PL/SQL qui permet de faire les changements suivants au produit numéro 3

  • Multiplier le prix unitaire par deux, si la quantité en stock est >= 10. Afficher le message « Prix unitaire du produit N : 3 est multiplié par deux » si la modification est faite.
  • Supprimer ce produit, si la quantité en stock est <10. Afficher le message « Le produit N: 3 est supprimé » si la suppression est faite.

Publicité

Exercice 4

Créer un type tableau nommé « TAB ». Définir une variable ‘tab\_article’ de ce type.

La variable ‘tab\_article’ contient trois lignes. Re mplir cette variable par le contenu suivant :

Ligne 1 : Tv

Ligne 2 : PC

Ligne 3 : Climatiseur

Afficher le contenu de la variable « tab\_article ».

Exercice 5

Publicité

Dans un bloc PL/SQL, définir un type enregistrement composé des champs : Num, Designation, Prix, Quantite. Définir une variable de ce type. Cet enregistrement contient les informations adéquates pour l’article N° 6. Remplir l’enregistrement par des va leurs de votre choix et l’utiliser pour insérer une nouvelle ligne dans la table Article. Afficher le contenu de cette table après exécution du bloc PL/SQ.

Exercice 6

Ecrire un bloc PL/SQL qui permet de modifier le prix de l’article N° 2 selon la valeur de la quantité en stock :

  • Augmenter le prix de 200 dinars si la quantité dépasse 50.
  • Augmenter le prix de 100 dinars si la quantité estentre 30 et 50.
  • Diminuer le prix de 100 dinars si la quantité est entre 20 et 30.
  • Diminuer le prix de 50 dinars si la quantité est inférieure à 20.

Exercice 7

Ecrire un bloc PL/SQL qui permet de :

  • Déclarer un enregistrement ARTICLE\_R qui contient les champs Num, Des, Prix et Qte.
  • Déclarer une variable VR de type Article%Rowtype.
  • Afficher les données relatives à l’article N° 4 en utilisant l’enregistrement ARTICLE\_R si le prix est > 800.
  • Sinon, afficher les données relatives à cet article en utilisant la variable VR.

Exercice 8

Publicité

Ecrire un bloc PL/SQL qui calcule et affiche la somme totale des quantités en stock de tous les articles, en utilisant une boucle FOR. On suppose qu’on a 10 articles et que les numéros des articles sont ordonnées (1, 2, 3, …, 10).

Exercice 9

Ecrire un bloc PL/SQL qui calcule et affiche le max des prix de tous les articles, en utilisant une boucle While (il ne faut pas utiliser la fonction SQL MAX). On suppose que les numéros des articles sont ordonnés et qu’ils commencent à partir de 1.

Exercice 10

Ecrire un bloc PL/SQL qui efface le contenu de la table Article, ligne par ligne, en utilisant une boucle LOOP. On suppose que les numéros des articles sont quelconques, et que leur nombres est inconnu.

Module: SGBD - TP 3 (PL/SQL)

Databases and Structured Query Language (SQL/PL-SQL) · notes

Voir tous les documents en bases de données

Module : SGBD

TP 3 (PL/SQL)

Exercice 1

1- Créer la table Article et la remplir avec les données suivantes (Num\_Article est une clé primaire) :

| | | | |

| --- | --- | --- | --- |

| Num\_Article | Designation | Prix\_Unitaire | Qte\_Stock |

| 1 | Tv | 690 | 50 |

Publicité

| 2 | Radio | 130 | 10 |

| 3 | GSM | 350 | 20 |

| 4 | PC | 990 | 39 |

Exercice 2

Ecrire un bloc PL/SQL qui permet de changer la désignation du produit en ‘GSM’ pour le Num\_Article = 2, si sa quantité en stock est supérieur à 5. Ensuite afficher le message « désignation changé » s’il y a eu changement et « Pas de changement » s’il n’y a pas eu de changement.

Exercice 3

Ecrire un bloc PL/SQL qui permet de faire les changements suivants au produit numéro 3

  • Multiplier le prix unitaire par deux, si la quantité en stock est >= 10. Afficher le message « Prix unitaire du produit N : 3 est multiplié par deux » si la modification est faite.
  • Supprimer ce produit, si la quantité en stock est <10. Afficher le message « Le produit N: 3 est supprimé » si la suppression est faite.

Publicité

Exercice 4

Créer un type tableau nommé « TAB ». Définir une variable ‘tab\_article’ de ce type.

La variable ‘tab\_article’ contient trois lignes. Re mplir cette variable par le contenu suivant :

Ligne 1 : Tv

Ligne 2 : PC

Ligne 3 : Climatiseur

Afficher le contenu de la variable « tab\_article ».

Exercice 5

Publicité

Dans un bloc PL/SQL, définir un type enregistrement composé des champs : Num, Designation, Prix, Quantite. Définir une variable de ce type. Cet enregistrement contient les informations adéquates pour l’article N° 6. Remplir l’enregistrement par des va leurs de votre choix et l’utiliser pour insérer une nouvelle ligne dans la table Article. Afficher le contenu de cette table après exécution du bloc PL/SQ.

Exercice 6

Ecrire un bloc PL/SQL qui permet de modifier le prix de l’article N° 2 selon la valeur de la quantité en stock :

  • Augmenter le prix de 200 dinars si la quantité dépasse 50.
  • Augmenter le prix de 100 dinars si la quantité estentre 30 et 50.
  • Diminuer le prix de 100 dinars si la quantité est entre 20 et 30.
  • Diminuer le prix de 50 dinars si la quantité est inférieure à 20.

Exercice 7

Ecrire un bloc PL/SQL qui permet de :

  • Déclarer un enregistrement ARTICLE\_R qui contient les champs Num, Des, Prix et Qte.
  • Déclarer une variable VR de type Article%Rowtype.
  • Afficher les données relatives à l’article N° 4 en utilisant l’enregistrement ARTICLE\_R si le prix est > 800.
  • Sinon, afficher les données relatives à cet article en utilisant la variable VR.

Exercice 8

Publicité

Ecrire un bloc PL/SQL qui calcule et affiche la somme totale des quantités en stock de tous les articles, en utilisant une boucle FOR. On suppose qu’on a 10 articles et que les numéros des articles sont ordonnées (1, 2, 3, …, 10).

Exercice 9

Ecrire un bloc PL/SQL qui calcule et affiche le max des prix de tous les articles, en utilisant une boucle While (il ne faut pas utiliser la fonction SQL MAX). On suppose que les numéros des articles sont ordonnés et qu’ils commencent à partir de 1.

Exercice 10

Ecrire un bloc PL/SQL qui efface le contenu de la table Article, ligne par ligne, en utilisant une boucle LOOP. On suppose que les numéros des articles sont quelconques, et que leur nombres est inconnu.