IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

utilisation de logminer sous Oracle 10g [Fait]


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 31
    Par défaut utilisation de logminer sous Oracle 10g
    Bonjour à tous,
    J'utilise logminer pour récupérer les transactions effectués sur mon bdd, en l'exécutant dans un script tout marche parfaitement, mais dés que j'essaye de l'integrer dans un procedure tous se bloque et sqlplus m'envoie des erreurs, mon but est d'entrer l'option 'STARTTIME' ,dans le procedure logmnr.start, comme étant un paramètre d'entrer, je veut utiliser ' STARTTIME' comme une variable récupérer d'une autre fonction, voila ce que j'ai essayé de faire mais toujours ça marche pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    create or replace function debut (date_start in varchar2 ) return varchar2 is
    begin
    return date_start;
    end;
     
    --fonction debut creé 
     
    variable date_s varchar2(2000);
    execute :date_s := début('29-Mars-2008 10:01:34');
     
    --procédure se termine avec succès
     
    EXECUTE DBMS_LOGMNR.START_LOGMNR(-
           STARTTIME => date_s, -
             ENDTIME => SYSDATE, -
                    OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG + -
                        DBMS_LOGMNR.COMMITTED_DATA_ONLY + -
                        DBMS_LOGMNR.NO_SQL_DELIMITER + -
                        DBMS_LOGMNR.NO_ROWID_IN_STMT + -
                        DBMS_LOGMNR.CONTINUOUS_MINE);
    et voila l'erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ERREUR Ó la ligne 1 :
    ORA-06550: Ligne 1, colonne 53 :
    PLS-00201: l'identificateur 'DATE_S' doit Ûtre dÚclarÚ
    ORA-06550: Ligne 1, colonne 7 :
    PL/SQL: Statement ignored
    j'ai deux questions:
    i)Est ce qu'on peut pas utiliser des variables dans les options d'un prcédure pl/sql
    ii)Est ce que je peut utiliser logminer dans un procedure pl/sql.
    Merci d'avance pour toute aide
    Cordialement.

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    c'est probablement pas la source du problème mais tu appelles début au lieu debut

    il manque : devant le nom de la variable, tu le fais bien pour appeler debut mais pas dans la procédure suivante

  3. #3
    Membre averti
    Inscrit en
    Février 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 31
    Par défaut
    Bonjour à tous,
    j'ai toujours le même problème, j'ai essayé de faire celà mais ça marche pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    declare
    va date;
    begin
    select max(date_c) into va from connexion_test;
    DBMS_LOGMNR.START_LOGMNR(-
           STARTTIME =>:va -
             ENDTIME => SYSDATE, -
                    OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG + -
                        DBMS_LOGMNR.COMMITTED_DATA_ONLY + -
                        DBMS_LOGMNR.NO_SQL_DELIMITER + -
                        DBMS_LOGMNR.NO_ROWID_IN_STMT + -
                        DBMS_LOGMNR.CONTINUOUS_MINE);
     
    end;
    et voila l'erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SP2-0552: Variable de lien "VA" non dÚclarÚe.
    je demande si l'erreur est du au procedure DBMS_LOGMNR.START_LOGMNR elle même, cad qu'elle n'accepte pas des variable, je ne sais pas, aidez moi svp parce que là je me bloque.

  4. #4
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut


    Soit tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    variable date_s varchar2(2000);
    execute :date_s := début('29-Mars-2008 10:01:34');
     
    --procédure se termine avec succès
     
    EXECUTE DBMS_LOGMNR.START_LOGMNR(-
           STARTTIME => :date_s, -
             ENDTIME => SYSDATE, -
                    OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG + -
                        DBMS_LOGMNR.COMMITTED_DATA_ONLY + -
                        DBMS_LOGMNR.NO_SQL_DELIMITER + -
                        DBMS_LOGMNR.NO_ROWID_IN_STMT + -
                        DBMS_LOGMNR.CONTINUOUS_MINE);
    soit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    declare
    va date;
    begin
    SELECT max(date_c) INTO va FROM connexion_test;
    DBMS_LOGMNR.START_LOGMNR(
           STARTTIME =>va 
             ENDTIME => SYSDATE, 
                    OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG + 
                        DBMS_LOGMNR.COMMITTED_DATA_ONLY + 
                        DBMS_LOGMNR.NO_SQL_DELIMITER + 
                        DBMS_LOGMNR.NO_ROWID_IN_STMT + 
                        DBMS_LOGMNR.CONTINUOUS_MINE);
     
    end;
    : dans le 1er cas parce que c'est une variable SQL*Plus et pas de : ensuite parce que c'est du PL/SQL... Evidemment si tu changes le code en cours de discussion ça marche pas

  5. #5
    Membre averti
    Inscrit en
    Février 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 31
    Par défaut
    Merci Orafrance,
    j'ai essayé ceci, mais malheureusement toujours des erreurs:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    declare
    va date;
    begin
    SELECT max(date_c) INTO va FROM connexion_test;
    DBMS_LOGMNR.START_LOGMNR(-
           STARTTIME =>va, -
             ENDTIME => SYSDATE, -
                    OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG + -
                        DBMS_LOGMNR.COMMITTED_DATA_ONLY + -
                        DBMS_LOGMNR.NO_SQL_DELIMITER + -
                        DBMS_LOGMNR.NO_ROWID_IN_STMT + -
                        DBMS_LOGMNR.CONTINUOUS_MINE);
     
    end;
    et voilà l'erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    DBMS_LOGMNR.START_LOGMNR(-
                             *
    ERREUR Ó la ligne 5 :
    ORA-06550: Ligne 5, colonne 26 :
    PLS-00707: structure non prise en charge ou erreur interne [2603]
    ORA-06550: Ligne 5, colonne 1 :
    PL/SQL: Statement ignored

  6. #6
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    il n'y a pas de -... pour rappel, on n'est pas sensé répondre aux erreurs de syntaxe... il faut lire les tutos si tu ne sais pas développé en PL/SQL

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Utilisation de FND_FILE sous Oracle express 10g
    Par kodo dans le forum Oracle
    Réponses: 0
    Dernier message: 17/04/2011, 22h31
  2. problème d'exécution d'un report sous oracle 10g
    Par seure dans le forum Reports
    Réponses: 1
    Dernier message: 22/03/2006, 17h47
  3. [Volumétrie] recherche info sous Oracle 10g
    Par LovSylv dans le forum Oracle
    Réponses: 6
    Dernier message: 03/02/2006, 03h04
  4. Réponses: 11
    Dernier message: 30/12/2005, 12h33
  5. Pb de performances sous Oracle 10g
    Par kamalito dans le forum Oracle
    Réponses: 24
    Dernier message: 25/10/2005, 16h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo