Bonjour,
Dans un trigger, lors de la mise à jour d'une table, j'aimerais pouvoir récupérer le texte de la requête qui a mis à jour ma table (Insert, Update ou delete).
Y a t'il quelque chose pour ça ???
Merci par avance !
Bonjour,
Dans un trigger, lors de la mise à jour d'une table, j'aimerais pouvoir récupérer le texte de la requête qui a mis à jour ma table (Insert, Update ou delete).
Y a t'il quelque chose pour ça ???
Merci par avance !
cad tu veux recuperer la requete elle meme?
Oui, je voudrais récupérer l'ordre SQL parsé et soumis à la base.
Exemple, si j'ai inséré une valeur 'a' dans mon champ CL dans la table TBL, je voudrais récupérer le texte 'INSERT INTO tbl (cl) VALUES ('a')' qui a généré l'insert dans un trigger before ou after.
L'objectif final est de stocker ces ordres et de permettre une diffusion sur des bases de données complétement distinctes.....
Si tu es en 10g, utilise Streams qui est l'outil de réplication d'Oracle
Sinon, plutôt que récupérer les DML via un trigger, tu devrais utiliser logminer (ce que fait Streams en réalité )
Merci pour ta réponse.
Je suis sous ORACLE 8.
Par contre, ce besoin ne concerne qu'un nombre très limité de tables (de surcroit, le logmining n'est pas activé sur la base).
Je pense que je vais avoir du mal à justifier qu'il faille logguer toute activité sur plusieurs centaines de tables (puisqu'il faudrait vraissemblablement activer le supplemental logging), alors que j'ai ce besoin sur uniquement une quinzaine de tables. La performance risque d'être largement dégradée (la volumétrie et le nombre d'utilisateurs sont très importants).
Peut-on faire plus ou moins la même chose sans utiliser le logminer (je pensais aux triggers parceque cela me permet de cibler précisément les tables dont j'ai besoin et que de toutes les façons, j'ai déjà un trigger sur ces tables pour faire un certain nombre d'autres opérations) ???
Merci par avance !
Dans ce cas pourquoi tu ne fais pas de snapshot ou simplement une vue en utilisant un db link ?
C'est à dire ?
"Comparer" mes tables entre les bases de données, c'est l'idée ?
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager