Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/05/2008, 15h46   #1
Candidat au titre de Membre du Club
 
Inscription : janvier 2003
Messages : 116
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 116
Points : 11
Points : 11
Par défaut Récupération du nom de la table et du nom du champ modifié

bjr a tous
j'ai une base de données sous oracle 8i,
j'ai crée un trigger pour audite une table de 50 champs, je veux savoir s'il existe une fonction qui récupere automatiquement le nom du champ modifié.
voici le code utilisé:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
CREATE OR REPLACE TRIGGER "GSAO"."AUDIT" AFTER INSERT OR 
    UPDATE OF "MATRIC_AGNT" 
    ON "SAGENTS" 
    FOR EACH ROW begin
 
IF inserting then
 
INSERT INTO ANCIENSMAT (OPERATION, Timestamp, old_MAT, new_MAT, TERMINAL)
VALUES('ajout', sysdate, :old.matric_agnt, :new.matric_agnt, sys_context('USERENV', 'SESSION_USER'));
 
end IF;
end;
merci d'avance.
colombe est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2008, 16h12   #2
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 458
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 458
Points : 4 223
Points : 4 223
Non. le seul moyen est de tester les valeurs, parce que tu peux avoir plusieurs colonnes modifiées.
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2008, 16h17   #3
Candidat au titre de Membre du Club
 
Inscription : janvier 2003
Messages : 116
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 116
Points : 11
Points : 11
Par défaut fonction qui récupere le nom du champ modifie

donc il n'existe pas une fonction comme sys_context qui peux récuperer le nom de la colonne modifier
dans ce cas je dois creer une table qui comporte les 50 colonnes de ma table?
colombe est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h06.


 
 
 
 
Partenaires

Hébergement Web