Menu

Trigger for delete [Fermé]

- - Dernière réponse : g-bd-oracle
Messages postés
1
Date d'inscription
jeudi 13 janvier 2011
Dernière intervention
13 janvier 2011
- 13 janv. 2011 à 21:27
Bonjour,

Je voulais créer un trigger sur une table, dés que je supprime une ligne de cette table je voulais qu'il sera copié dans une autre table que je vais l'appeler table historique, SVP aidez moi.. J'ai besoin de votre aide..

Je comprend pas les triggers , voila le debut:

create trigger on TABLE for delete
as
select * from deleted
insert into historique values('CHAMPS')
...
Je sais vraiment pas que dois je faire, HELP... :(
Afficher la suite 

6 réponses

Messages postés
18
Date d'inscription
vendredi 2 novembre 2007
Dernière intervention
27 mars 2008
0
Merci
Bonjour,
pour créer un trigger qui insert le tuple supprimé dans la table Historique, tu dois suivre la synthaxe suivante:

CREATE OR REPLACE TRIGGER Nom_TRIGGER
BEFORE DELETE ON NOM_TABLE (NOM_TABLE: est le nom de la table que tu vient de lui suprimer un tuple)
FO EACH ROW
BEGIN
-- aprés tu doit selectionner les champs à supprimer et les insérer dans la table historique
end;
0
Merci
OHHH, vous avez mis en commentaire la partie que je connais pas :'(
OK.. si par exemple j'ai un seule champ "nom" dans ma table, lorsque je supprime une ligne (un nom), je voulez qu'il sera collé automatiquement dans la table historique, mais COMMENT je dois traduire ce blabla en sql server
j'essaye...

CREATE OR REPLACE TRIGGER Nom_TRIGGER
BEFORE DELETE ON NOM_TABLE (NOM_TABLE: est le nom de la table que tu vient de lui suprimer un tuple)
FO EACH ROW
BEGIN
-- aprés tu doit selectionner les champs à supprimer et les insérer dans la table historique
declare @nom varchar(10)
set @nom=(select nom from deleted)
insert into historique values(@nom)

end;

est ce que c'est comme ça???

merci encors
0
Merci
OKKK... J'ai réussi à créer mon trigger, merci à vous
Messages postés
18
Date d'inscription
vendredi 2 novembre 2007
Dernière intervention
27 mars 2008
0
Merci
ou bien ça
declare
nom2 delete.nom %type;
Begin
select nom from delete
into nom2;
insert into historique
values(nom2);
end;
0
Merci
Derniere question: Comment signaler que le probleme est resolu sur ce forum ??? :p
Messages postés
1
Date d'inscription
jeudi 13 janvier 2011
Dernière intervention
13 janvier 2011
0
Merci
merci
Le Cœur et le Sabre | Brothers Conflict | watch new episodes of Doctor Who Season 11