begin process at 2010 02 10 02:39:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

Oracle

 > 

Functions

 > 

trigger


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

trigger

vendredi 2 mars 2007 à 18:13:10 | trigger

tuteur59000

BONJOUR
pouvez vous me decrire le choix de ces 2 triggers svp?
merci



create or replace Trigger Historise_Propose
Before Update or Delete
on Propose
For each ROW
BEGIN
insert into Histo_Propose values (:old.REF_ARTICLE,:old.REF_FOURNISSEUR,SYSDATE,:OLD.PRIX);
END;

create or replace Trigger Historise_Stock
Before Update or Delete
on Stock
For each ROW
BEGIN
insert into Histo_Stock values (:old.REF_ARTICLE,:old.REF_ENTREPOT,:OLD.PRIX,SYSDATE,:OLD.QUANTITE);
END;

 

samedi 3 mars 2007 à 15:36:37 | Re : trigger

skweeky

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Bonjour,

Il semble faire la même chose, mis à part qu'il ne s'executent pas sur la même table.

C'est un usage type de trigger, on historise les données supprimer dans une autre table.


Cordialement
------------
Christian Robert - Winwise
http://blogs.developpeur.org/christian
MVP SQL Server
samedi 3 mars 2007 à 17:03:55 | Re : trigger

tuteur59000

Bonjour,
ok merci beaucoup
je vais encore vous embéter
voilà j'ai trouvé 3 procédures qui sont "déclencher commande,facturer,traiter commander")
Pouvez vous m'expliquer leur fonctionnement (pour chaque )svp?
je vos remerci beaucoup c'est sympa

//Procédure Facturer :

 

create or replace procedure facturer

(

  NumeroClient number,

  Article number,

  quantite number,

  prix number

)

is

 numfacture number;

 

begin

 select max(numero) into num10:39 24/02/2007facture from facture where payee <> 'O' and num_client = NumeroClient;

 if numfacture is null

  then

            insert into Facture values (Seq_Facture.NEXTVAL,NumeroClient,sysdate,'0','N');

 end if;

 select max(numero) into numfacture from facture where payee <> 'O' and num_client = NumeroClient;

 

  insert into Ligne_Facture Values (numfacture,Article,prix,quantite);

 

end;

/

 

 

//Procédure Declencher_Commande :

 

 

create or replace procedure Declencher_Commande

(

  Nombre_a_commander Number,

  Indice_rupture number

)

is

ref_art number;

 

BEGIN

  DECLARE cursor curs is Select ref_article from stock group by ref_article having sum(quantite) < Indice_rupture;

 

  BEGIN

            Open curs;

            LOOP

                        fetch curs into ref_art;

                        exit when curs%notfound;

                       

insert into commande

SELECT seq_commande.nextval,ref_art,F.REFERENCE, sysdate,P.PRIX,Nombre_a_commander

from Propose P, Fournisseur F,minprix M

where F.REFERENCE=P.REF_FOURNISSEUR

and M.REFERENCE=ref_art

and M.prixmin=P.PRIX

and P.ref_article=ref_art;

 

 

            END LOOP;

  END;

END;

 

 

// procédures  traiter commande

 

CREATE VIEW SOMME_ENS AS

SELECT REF_ENTREPOT , SUM (Quantite ) as SOMME

FROM STOCK

GROUP BY REF_ENTREPOT;

 

CREATE OR REPLACE PROCEDURE Traiter_Commande (num NUMBER)

is

ref NUMBER;

BEGIN

 

SELECT min(REF_ENTREPOT) INTO REF FROM SOMME_ENS

WHERE SOMME= (SELECT min (SOMME) from SOMME_ENS)

;

INSERT INTO STOCK select ref_article, ref, prix, quantite from commande where reference = num ;

 

DELETE FROM COMMANDE WHERE REFERENCE = num;

END

;

 



Cette discussion est classée dans : replace, ref, trigger, create, old


Répondre à ce message

Sujets en rapport avec ce message

MYSQL, TRIGGER, OLD, NEW [ par Flux__ ] Bonjour, J'ai un problème de trigger sous MySQL. Je souhaiterais supprimer un enregistrement si il existe déja et inserer le nouveau à la place. Je m Encore et toujours transaction... [ par Malkuth ] Bijours,Encore des questions sur les transactions !Si j'ai une procedure stocké avec Transaction et qu'elle déclenche un trigger qui utilise un autre TRIGGER AFTER / BEFORE [ par vladam ] hello, j'ai un trigger :CREATETRIGGER dbo.IsAuthDeleted </font probleme de trigger sous oracle [ par EmacLi ] Bonjour à tous.Voila, j'ai un petit trigger qui ne fonctionne pas.J'aurais voulu l'avi d'un expert:CREATE OR REPLACE TRIGGER nomTrigger BEFORE INSERT Trigger ??? [ par BasicInstinct ] bonjour tout le monde,je cherche à remplacer des caractères parasites à l'insertion ou modification de données effectuées par un programme tierce ( do Create table - Chaine vide autorisée ??? [ par DARKSIDIOUS ] Bonsoir à tous,Comme faire une requête de création de table avec une chaine vide autorisée pour une colonne ?CREATE TABLE toto (Nom VARCHAR(32) NOT NU trigger avec timer [ par soumia83 ] salut j'aimerai bien savoir si on peut realiser un trigger qui se declanche par exemple chaque seconde qui veux dire qu'on doit avoir un timer qui le expliquer fonctionnement des procedure [ par tuteur59000 ] Bonjourpouvez vous m'expliquer les 3procédures avec leur requetes  suivantes svp?merci pour la réponse (procedures facturer,procedur Trigger UPDATED sur plusieurs champs [ par Maroxye ] Bonjour! Je débute en SQL et je fois faire un TRIGGER sur l'ajout, la suppression et la modification de certains champs dans une table. Lorsque ces Problème procedure sql [ par toomsbzh ] Bonjour,J'ai un problème lorsque je veux mettre ma procédure sous oracle il me dis que j'ai une erreur de compilation mais je ne vois pas où, si vous


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,920 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales