Bonjour à toutes et à tous, je dois dans le cadre d'une BDD créer une procédure censé pour chaque ligne verifier la date de péremption d'un produit, et si ce dernier est périmé depuis plus de 5 ans, il doit alors être supprimé.
Ayant peu de notions en PL/SQL je demande votre aide, voici pour le moment ce que j'ai codé
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 CREATE OR REPLACE PROCEDURE pcd_supprimer_medic_perimes v_date DATE; s_date DATE; IS CURSOR les_produits IS SELECT nom_produit FROM PRODUITS; thisproduits les_produits%ROWTYPE; CURSOR date IS SELECT TO_CHAR(sysdate,'DD/MM/YYYY') into v_date FROM DUAL; SELECT date_expiration into s_date FROM PRODUITS; BEGIN OPEN date FETCH date; CLOSE cur_date; IF s_date - v_date > 5 THEN OPEN les_produits; LOOP FETCH les_produits; EXIT WHEN (les_produits%NOTFOUND); DELETE nom_produit FROM PRODUITS; END LOOP; CLOSE date; END IF; END pc_supprimer_medic_perimes;
Partager