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

  FORUM HardWare.fr
  Programmation

  newbie en BD demande différence entre Procédure Stockée et Trigger ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

newbie en BD demande différence entre Procédure Stockée et Trigger ...

n°27045
lexdu
Fuuton Rasen Shuiriken!
Posté le 24-04-2001 à 16:10:05  profilanswer
 

Bonjour, bonjour ;)
Tout est dans le titre.
 
Merci ;)


---------------
Asus U80v (WX016V) (Debian 64bits) + Asus 1015PEM (Ubuntu 64bits) + Freebox v6 + Synology DS211
mood
Publicité
Posté le 24-04-2001 à 16:10:05  profilanswer
 

n°27049
trictrac
Posté le 24-04-2001 à 16:14:28  profilanswer
 

Ce nest pas a prendre comme parole d'evangile, mais il me semble qu'une procedure stockee est comme une fonction, c'est a dire une suite de commande que tu appelle quand t'en a besoin, alors qu'un trigger est une suite de commandes qui s'execute lors de condition particulieres..
A confirmer..

 

[edit]--Message édité par trictrac--[/edit]

n°27054
MagicBuzz
Posté le 24-04-2001 à 16:29:49  profilanswer
 

Non, pas tout à fait ;)
 
Pour la procedure stockée, c'est ça en effet.
 
Pour le trigger, dans l'absolu, tu n'est censé rien faire d'autre que d'éxécuter des procédures stockées/fonctions
 
En effet, TRIGGER = "Déclencheur" en français.
 
Mais généralement, les SGDB-R permettent de faire des trigger plus complexe, qu'on peut assimiler à TRIGGER + procédure stockée

n°27055
jupiler
Un cousin...
Posté le 24-04-2001 à 16:30:38  profilanswer
 

...je confirme presque mot pour mot


---------------
Je ne suis ni pour, ni contre, bien au contraire  
n°27059
trictrac
Posté le 24-04-2001 à 16:34:04  profilanswer
 

en bref, j'avais juste koi (j'ai vu les trigger sous oracle...)

n°27061
lexdu
Fuuton Rasen Shuiriken!
Posté le 24-04-2001 à 16:37:02  profilanswer
 

oki merci beaucoup tout le monde  :jap:  
 
Voilà mon ch'tit pbm:  
Je suis sous Oracle.
Est-ce que je peux déclencher de manière hebdomadaire (genre tous les vendredi) une procédure stockée à partir d'un trigger qui checkerait le "sysdate" ? Si oui, comment ?
Si vous avez une autre solution, je suis preneur aussi ;)
 
Encore merci ;)
 
(là j'avoue que pour cette question je n'ai pas fait de recherche sur le forum :( je sais c'est pas bien)

 

[edit]--Message édité par lexdu--[/edit]


---------------
Asus U80v (WX016V) (Debian 64bits) + Asus 1015PEM (Ubuntu 64bits) + Freebox v6 + Synology DS211
n°27064
MagicBuzz
Posté le 24-04-2001 à 16:38:42  profilanswer
 

Un truc qu'on a oublié de préciser :
 
Un trigger est associé à une/des action(s) sur une table.
 
=> Exemple :
Sous M$ SQL, comment envoyer un mail lors de la mise à jour d'une table. (titles)
 
CREATE TRIGGER reminder
ON titles
FOR INSERT, UPDATE, DELETE

AS
    EXEC master..xp_sendmail 'MaryM',  
    'Don''t forget to print a report for the distributors.'
GO
 
 
(Exemple MSDN Library)
master..xp_sendmail est une procédure stockée système, du shéma 'master'

n°27065
MagicBuzz
Posté le 24-04-2001 à 16:39:52  profilanswer
 

lexdu a écrit a écrit :

Si vous avez une autre solution, je suis preneur aussi ;)



Je peux regarder ça ce soir dans mes cours d'Oracle...
Je les ai pas sous la main là...

n°27067
jupiler
Un cousin...
Posté le 24-04-2001 à 16:41:17  profilanswer
 

lexdu a écrit a écrit :

oki merci beaucoup tout le monde  :jap:  
 
Voilà mon ch'tit pbm:  
Je suis sous Oracle.
Est-ce que je peux déclencher de manière hebdomadaire (genre tous les vendredi) une procédure stockée à partir d'un trigger qui checkerait le "sysdate" ? Si oui, comment ?
 




 
il me semble que les triggers ne se déclenchent que si il  
y altération de la table visée. donc je pense pas que la
date puisse être l'élément déclencheur. A confirmer...


---------------
Je ne suis ni pour, ni contre, bien au contraire  
n°27071
lexdu
Fuuton Rasen Shuiriken!
Posté le 24-04-2001 à 16:46:27  profilanswer
 

Bah si je checke l'état de la table DUAL (UPDATE) et plus précisemment le champ sysdate, je dois pouvoir faire déclencher mon trigger à la date voulue (si tant est que je puisse retrouver "vendredi" dans la valeur retournée)


---------------
Asus U80v (WX016V) (Debian 64bits) + Asus 1015PEM (Ubuntu 64bits) + Freebox v6 + Synology DS211
mood
Publicité
Posté le 24-04-2001 à 16:46:27  profilanswer
 

n°27075
MagicBuzz
Posté le 24-04-2001 à 16:47:14  profilanswer
 

Je sais qu'on peu schéduler des procédures stockées sous Oracle...
Mais je sais plus comment...
Un trigger sur la table DUAL ne me semble pas complètement recommandé (et je pense impossible ;), heureusement)
 
Mais il doit y avoir un autre moyen quelquepart...

n°27079
MagicBuzz
Posté le 24-04-2001 à 16:49:51  profilanswer
 

lexdu > DUAL n'existe pas en fait...
C'est pas une table.
C'est une entité logique dans laquelle s'éxécute toutes les fonctions...
 
en fait quand tu fais "SELECT SYSDATE FROM DUAL", SYSDATE n'est pas un champ, mais une fonction sans paramètres...
 
Crée une fonction "GETDATE" par exemple et essaie de l'éxécuter seule, tu verras... Il te faudra mettre une clause "FROM DUAL"

n°27089
Fred999
Rabat-joie
Posté le 24-04-2001 à 16:57:07  profilanswer
 

lexdu > Logiquement, si tu parles de traitement périodique, tu dois avoir quelque part un outil de gestion des batchs... Qui te permet de lancer ton traitement quand tu veux. Par exemple, une "crontab".
 
Un trigger sur dual, effectivement, c'était plutôt une mauvaise idée ;)
 
Sinon, Lucille :love: t'a tout dit.

n°27091
trictrac
Posté le 24-04-2001 à 16:58:12  profilanswer
 

tu ne peux pas faire de trigger sur la date, vu qu'il faudrait que le trigger soit lancé H24 pour savoir s'il doit s'activer, ce qui boufferait trop de ressource sur le server (a l'echelle de milliers de triggers).
Il me semble que c'est pareil en php, tu ne peut pas faire un prog qui se lance tout seul a une certaine date sans le faire boucler dans le vent jusqu'a cete date, ce qui n'est pas top au niveau des ressource du server
(genre ssave database MYsql qui tournerait en tache de fond sur le server..)

n°27092
lexdu
Fuuton Rasen Shuiriken!
Posté le 24-04-2001 à 16:58:25  profilanswer
 

oki doki, je cherche encore alors ...
 
mais j'aimerais pouvoir faire tout çà sans avoir à utiliser un scheduler genre ACTA !!!
çà serait con et cher pour une toute petite fonction comme çà ;)


---------------
Asus U80v (WX016V) (Debian 64bits) + Asus 1015PEM (Ubuntu 64bits) + Freebox v6 + Synology DS211
n°27094
Lucile
La petite fleur du forum
Posté le 24-04-2001 à 16:59:28  profilanswer
 

Y'a qu'un 'L' à Lucile :p


---------------
-- Censored by Joce -- :D
n°27096
lexdu
Fuuton Rasen Shuiriken!
Posté le 24-04-2001 à 17:01:13  profilanswer
 

Merci Lucile  :sol:


---------------
Asus U80v (WX016V) (Debian 64bits) + Asus 1015PEM (Ubuntu 64bits) + Freebox v6 + Synology DS211

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

  newbie en BD demande différence entre Procédure Stockée et Trigger ...

 

Sujets relatifs
[phpMyAdmin] Je me demande si on peux le faire et si c intéressant...NEWBIE en PHP recherche aide!!!
Probleme d'installation de Dacode :-( Newbie inside ...newbie, question urgente
Probleme de requete Perl sur serveur local (Newbie inside )[BASE DE DONNEES] difference de 2 dates sous ACCESS ??
c'est quoi la différence enre javascript et JvscriptDemande explication pour le langage C
[TP7] Procédure cryptage et une autre décryptageDifference entre SQL et MySql / utilisation de BD avec VC++
Plus de sujets relatifs à : newbie en BD demande différence entre Procédure Stockée et Trigger ...


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