[ oracle ] programer un trigger

slt a tous, j'ai fais une replication bidirectionnelle synchrone en tre 2 bases distantes sur oracle 9i et ca marche a merveille, maintenant je veux la generaliser a une asynchrone et pour ca je dois programmé le declanchement de mes trigger pour qu'ils se declanche tous les jours a 23.00h , si quelqu'un connais la syntaxe ca ne serai pasde refus.
merci d'avance!
Configuration: Windows XP
Firefox 2.0.0.14

5 réponses

  1. Bonsoir,

    Les triggers sont nécessairement synchrones.

    Si tu veux déclencher un traitement à heure fixe, il faudra utiliser une procédure ou un bloc PLSQL déclenché par un JOB (DBMS_JOB) en Oracle 8i/9i/10g ou DBMS_SCHEDULE (il me semble) en 10g. Il faudra aussi avoir mis le paramètre job_processes=1 ou + dans le fichier ini.ora
    0
    1. tu peux m'aider sur la syntaxe je croi que je dois travaillé avec sysdate c'est ma toute 1er utilisation d'oracle et c'est vraiment urgent, meme avedc un petit exemple svp!
      0
      1. La doc de DBMS_JOB, en anglais :
        https://docs.oracle.com/cd/B10501_01/appdev.920/a96612/d_job.htm#999107

        pour soumettre un job :

        VARIABLE jobno number;
        BEGIN
        DBMS_JOB.SUBMIT(:jobno,
        what => 'mon bloc PL ou l'appel de ma procédure de synchro ici'
        next_date => trunc(SYSDATE)+23/24, -- 23H ce jour
        interval => 'trunc(SYSDATE+1) + 23/24' -- 23H le lendemain (si la synchro dure moins d'une heure;))
        );
        commit;
        END;
        /
        0
        1. je vais l'essayé merci beaucoup
          0
          1. Bonjour,

            Je voudrais pouvoir faire une réplication bidirectionnelle synchrone entre deux tables sur deux bases de données oracle différentes. En fait, j'ai deux applications web différentes utilisant deux tables presque identiques à quelques champs près, je voudrais que lorsque je modifie le mot de passe d'un utilisateur sur une application j'aimerai que celle-ci soit aussi modifié pour l'autre pour que l'utilisateur puisse se connecter sur les deux appli en utilisant le meme mot de passe. J'ai pensé à créer 1 table sur chaque base qui vont être les mêmes. Après je ne sais comment faire ?
            0