You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

57 lines
1.2 KiB

drop table tresultat purge;
create table tresultat(ligne varchar2(200));
variable vidEquipement char(3)
prompt id de l equipement
accept vidEquipement
variable vtarif number
prompt le tarif de l equipement ?
accept vtarif
variable vlibelle VARCHAR2(20)
prompt libellé équipement ?
accept vlibelle
DECLARE
dmessage varchar2(200);
probleme exception;
dcpt number;
BEGIN
dmessage := 'ERREUR: id equipement deja attribue';
SELECT COUNT(*) INTO dcpt
FROM EQUIPEMENT
WHERE idEquipement = '&vidEquipement';
IF dcpt=1 THEN
INSERT INTO tresultat VALUES (dmessage);
ELSE
dmessage := 'ERREUR: Le tarif doit etre superieure a 0';
IF '&vtarif' <= 0 then
raise probleme;
ELSE
dmessage := 'ERREUR: le libelle de l equipement doit etre unique';
SELECT count(*) INTO dcpt
FROM EQUIPEMENT
WHERE libelle = '&vlibelle';
IF dcpt>0 then
raise probleme;
ELSE
INSERT INTO EQUIPEMENT VALUES ('&vidEquipement', '&vtarif', '&vlibelle');
COMMIT;
INSERT INTO tresultat VALUES ('L equipement a ete enregistre :' || '&vlibelle');
END IF;
END IF;
EXCEPTION
WHEN probleme then
INSERT INTO tresultat VALUES (dmessage);
END;
.
/
SELECT * FROM tresultat;