Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2406 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Update dans logging (oracle)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Update dans logging (oracle)

n°2216103
chris_dury
Posté le 15-01-2014 à 08:34:44  profilanswer
 

Bonjour a tous,
Je suis débutant en base de donnée sql oracle et j'utilise toad comme logiciel.
Ma question est sans doute bete mais lorsque je fais une commande "update" d'une valeur, y a t il une trace quelconque de cette modification dans un fichier log ou autre ?
Un grand merci d'avance pour vos lumières
A+

mood
Publicité
Posté le 15-01-2014 à 08:34:44  profilanswer
 

n°2216151
olivthill
Posté le 15-01-2014 à 13:19:11  profilanswer
 

Ca dépend comment sont paramétrées la base de données et la table, et comment l'update est réalisé.
 
Une solution, pour avoir une trace des modifications, est d'utiliser un trigger before/after update.


Message édité par olivthill le 15-01-2014 à 13:19:39
n°2216166
gpl73
Posté le 15-01-2014 à 14:23:11  profilanswer
 

cela fait quoi le trigger before/ after? comme trace? rien...
sauf si tu lui dit de faire implicitement avec une instruction de svg sur ton before...
tu as essayé l'écriture transactionnelle? et l'exploitation des journaux?
 
sinon, la vielle méthode, qui marche tjs: la table de test et / la table de svg
 
 
 

n°2216168
chris_dury
Posté le 15-01-2014 à 14:28:07  profilanswer
 

gpl73 a écrit :

cela fait quoi le trigger before/ after? comme trace? rien...
sauf si tu lui dit de faire implicitement avec une instruction de svg sur ton before...
tu as essayé l'écriture transactionnelle? et l'exploitation des journaux?
 
sinon, la vielle méthode, qui marche tjs: la table de test et / la table de svg
 
 
 


 
Merci Gpl73,
Non, je n'ai rien essayé, je suis completement débutant et il s'agit d'une database qui tourne et qui a ete mise en place mais nous nous retrouvons seuls.
Nous mettons parfois a jour des valeurs (avec update comme on me l'a expliqué) mais j'aimerais retrouver les modifications de valeur et voir si quelqu'un d'autre en fait.
Merci bcp.
A plus

n°2216224
gpl73
Posté le 15-01-2014 à 17:21:35  profilanswer
 

Si c'est uniquement ça, regarde alors la mise en place de la journalisation d'une table. Et l'exploitation des journaux ...c'est pas super à lire mais tu as tout (en fonction de ton paramétrage, bien sur).
Sinon, après il faut taper dans la BD,  la modifier , faire des alter tables et ajouter et maintenir des champs de maintenance du style user_de_creation, timestamp_de_creation (ou datetime), pareil pour la modifi...
4 champs par tables,  les + sensibles.
NB: vérifier que cela ne plante pas ton appli qd même :)
 
Mais cela veut dire aussi, qu'il faut les gérer ces 4 champs:
Modif de ton appli si tu as les sources...
Modif de ta BD, via la mise en place de 2 triggers / tables :
un sur un after insert, un sur after update (ou before, il y a quelques subtilités dont je me rappelles plus...à lire...)
 
un truc simple du style :
set aft_user_creation = user;
set aft_timestamp_creation = now();
 
Pleins de gens te diront que tu es fou, de mettre des triggers, cela va te faire perdre de la performance... (si tu fais n'importe quoi, oui...)
 
J'attends tjs une compaison chiffrée entre un temps d'écriture complete via une appli, et une écriture via triggers.
 
Avantages des triggers:
Tu peux attaquer ta base de données sans passer par ton appli, tu as les regles que tu as écrites qui se feront ...
tu peux en théorie changer d'applicatif et concerver tes regles métiers et le fonctionnement de ta base...
 
Desavantages: cf dessus :)
C'est le soucis de mettre les règles super bas... c'est le manque de souplesse lié à l'évolutivité.  
Il faut que la table soit libre pour passer un trigger et pareil si tu veux le modifier... si production 24/24 => pb...
sauf si tu passes par une procedure appelée par ton trigger :)...
 
Les programmeurs préféront les modifs dans les appli, car ils peuvent changer facilement les régles de gestions et ainsi "bidouiller" les données plus facilement
les DBA préféront les règles dans les triggers, pas de modif hors règles métiers...
De plus, tu peux blinder ta base de données avec des contraintes... là aussi, cela peut être chaud.... il faut connaitre sa base et son applicatif(surtout si tu les passes après)...
 
C'est à voir et à étudier :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Update dans logging (oracle)

 

Sujets relatifs
Probleme de comptage (SQL Oracle)[ORACLE] problème avec "select in select" ou équivalent
configuration oracle 11gInstallation Oracle XX 11.2 : connexion impossible
[JQUERY/ASP/ORACLE]TABLE AJAX COLLAPSE PAGINATIONOracle Sql Developer, afficher fenetre de sortie de EXPLAIN
oracle proc stock et sql dynamiqueRequête UPDATE aucun résultat
[ORACLE] utlisation des alias[Oracle 10G] UTL_FILE avec requête conséquente
Plus de sujets relatifs à : Update dans logging (oracle)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR