-
DBMS_ALERT sans trigger
Bonjour,
Je souhaite récuperer une alert lorsqu'un insert a été effectué sur une base sur laquelle je n'ai pas la main et que je n'ai pas le droit de modifier.
Je n''ai donc pas la possibilité de mettre en place un trigger.
Je voulais savoir si il était tout de même possible d'utiliser DBMS_ALERT sans trigger ?
L'information qui m'interresse donc et "oui il y a eu un Insert d'effectué" et eventuellement récuperer le nom de ou des tables concernées.
Merci d'avance pour votre aide.
Jeff
-
En gros, vous voulez savoir ce qui se passe sur une base dont vous n'avez pas la responsabilité, dont vous n'êtes pas l'admin ... 8O :roll: :?
Il y a plein de techniques possibles, mais il faut avoir les droits pour le faire... ;-) (audit, trigger, dba_tab_modifications, ...)
-
Ben disons que c'est "spécial" ...
J'ai la main sur la base en admin MAIS je n'ai pas le droit de modifier ou de customiser la base.
-
Donc si vous ne pouvez rien faire, je vois mal comment vous pouvez dire que vous l'administrez... de toute façon, sans ne toucher à rien, non vous ne pourrez pas avoir ces infos !
-
Mais je n'ai jamais précisé que je l’administrais.. 8O
J'ai la main dessus, avec droits d'admin mais comme je le disais je n'ai pas le droit de faire de modif ou tunning dessus.
Je peux juste appeler les procs ou pkg qui sont dessus.
Ce que je voulais donc savoir c'est si il n'y a pas un DBMS_ que je puisse appeler pour récupérer les infos qui m'intéresse.
-
DBMS_XXX sont des packages de base de données qui répondent à des besoins précis. Dans chaque cas, il faut savoir le point de départ et le point d'arrivée. C'Est difficile de demander à ORACLE de fournir des DBMS_XXX qui donne n'importe quelle information, n'importe quand et n'importe comment, sur n'importe quoi...
Il faut implémenter des choses pour arriver à ce type de résultat. Donc, il faut savoir dès le début ce qu'on chercher afin de l'implémenter de façon optimale. Réponse, non, il n'existe aucun DBMS permettant de savoir s'il y a un une insertion sur table, et même s'il en existait un, il manquerait un timestamp pour savoir à partir de quand on veut savoir s'il y a eu des insertions... Alert serait une alternative, mais encore une fois, faut implémenter et avoir les droits de le faire :)
-
Ok je comprend.
Bon comme j'ai les droits mais pas le droit ... je vais faire autrement.
Un peu barbare mais ca devrait fonctionner.
Merci pour les explications.
++
Jeff
-
Avoir les droits sans les avoir, ce n'est pas les avoir!
C'est l'équivalent d'avoir le create any table, mais avec un trigger qui t'empêche de créer si tu n'est pas dans ton schéma!
Tes droits se résument au rôle select_any_catalog ou select_any_dictionnary si on considère le fait que tu ne peux pas les utiliser.