parent
00596d3135
commit
028f121c65
@ -0,0 +1,61 @@
|
|||||||
|
set echo off
|
||||||
|
set verify off
|
||||||
|
set feed off
|
||||||
|
|
||||||
|
CREATE TABLE tLigne(
|
||||||
|
designation VARCHAR2(500)
|
||||||
|
);
|
||||||
|
|
||||||
|
variable vRefProduit CHAR(5)
|
||||||
|
variable vRefFournisseur CHAR(5);
|
||||||
|
variable vPrixFournisseur NUMBER;
|
||||||
|
|
||||||
|
prompt Tappez la référence du nouveau produit:
|
||||||
|
accept vRefProduit
|
||||||
|
prompt Tappez la référence du fournisseur du nouveau produit:
|
||||||
|
accept vRefFournisseur
|
||||||
|
prompt Tappez le prix du produit:
|
||||||
|
accept vPrixFournisseur
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
dCount NUMBER;
|
||||||
|
NO_PRODUIT EXCEPTION;
|
||||||
|
NO_FOURNISSEUR EXCEPTION;
|
||||||
|
PRODUIT_FOURNISSEUR_ALREADY_EXIST EXCEPTION;
|
||||||
|
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
SELECT COUNT(*) INTO dCount FROM tProduit WHERE noProduit = '&vRefProduit';
|
||||||
|
IF dCount = 0 THEN
|
||||||
|
RAISE NO_PRODUIT;
|
||||||
|
|
||||||
|
|
||||||
|
SELECT COUNT(*) INTO dCount FROM tFournisseur WHERE ref = '&vRefFournisseur';
|
||||||
|
IF dCount = 0 THEN
|
||||||
|
RAISE NO_FOURNISSEUR;
|
||||||
|
|
||||||
|
SELECT COUNT(*) INTO dCount FROM tProduitFourn WHERE noProduit = '&vRefProduit' AND ref = '&vRefFournisseur';
|
||||||
|
IF dCount != 0 THEN
|
||||||
|
RAISE PRODUIT_FOURNISSEUR_ALREADY_EXIST;
|
||||||
|
|
||||||
|
INSERT INTO tProduitFourn VALUES('&vRefProduit', '&vRefFournisseur', '&vPrixFournisseur', NULL, NULL);
|
||||||
|
INSERT INTO tLigne VALUES('La liaison entre le produit et le fournisseur a ete ajoute');
|
||||||
|
|
||||||
|
EXCEPTION
|
||||||
|
when NO_PRODUIT then
|
||||||
|
INSERT INTO tLigne VALUES('La liaison ne peut exister car le produit renseigne n existe pas');
|
||||||
|
when NO_FOURNISSEUR then
|
||||||
|
INSERT INTO tLigne VALUES('La liaison ne peut exister car le fournisseur renseigne n existe pas');
|
||||||
|
when PRODUIT_FOURNISSEUR_ALREADY_EXIST then
|
||||||
|
INSERT INTO tLigne VALUES('La liaison existe deja, et n a donc pas ete ajoute une seconde fois.')
|
||||||
|
|
||||||
|
END;
|
||||||
|
.
|
||||||
|
/
|
||||||
|
|
||||||
|
set verify on
|
||||||
|
set echo on
|
||||||
|
set feed on
|
||||||
|
|
||||||
|
SELECT * FROM tLigne;
|
Loading…
Reference in new issue