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

Administration Oracle Discussion :

Problème avec un fichier .ctl


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Mai 2006
    Messages
    240
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 240
    Par défaut Problème avec un fichier .ctl
    bonjour j'ai ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    a=$(date "+%Y%m" --date=''0' days ago')
    LOAD DATA
        INFILE '/home/oracle/test_essai.rpt'
        append
        INTO TABLE essaie_$a  
        FIELDS TERMINATED BY '|' OPTIONALLY ENCLOSED BY '"'
        TRAILING NULLCOLS
    (date,nom,prenom,age)
    mais il ne marche pas parce que sous oracle on ne fais pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    a=$(date "+%Y%m" --date=''0' days ago')
    j'ai un script qui cré chaque mois une table oracle avec comme nom essaie_200808 par exemple. et dans cette table je dois insérer des données venant d'un fichier. comment donc spécifier dans mon fichier .ctl la date?
    j'espere que j'ai été clair.
    merci de votre aide

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 105
    Par défaut
    je ne comprends pas le rapport avec un fichier .ctl ?

    il semble que tu sois sous shell, peut-être que avec le anti-côte ` `$(date ...)` fontionne?

  3. #3
    Membre éclairé
    Inscrit en
    Mai 2006
    Messages
    240
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 240
    Par défaut
    Citation Envoyé par lca94 Voir le message
    je ne comprends pas le rapport avec un fichier .ctl ?

    il semble que tu sois sous shell, peut-être que avec le anti-côte ` `$(date ...)` fontionne?
    oui le script doit être exécuté sous linux mais il se pose un problème au niveau du nom de la table TABLE essai_$a
    avec a=$(date "+%Y%m" --date=''0' days ago') il semble qu'il y est problème à prendre en compte cette condition
    merci

  4. #4
    Membre éclairé
    Inscrit en
    Mai 2006
    Messages
    240
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 240
    Par défaut
    avec anti quote ça marche pas. le probleme c'est comment faire appelle à la date dans le fichier .ctl

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 105
    Par défaut
    ayé j'ai compris...j'étais effectivement ailleurs

    pour le load, moi je ne saurais pas comment récupérer une valeur a= intégrée qu fichier de "controle" ctl du laoder

    mais par contre tu peux recréer un .ctl via le shell comme ça
    tu as un fichier modele appele fichierctl.txt (ou ce que tu veux)
    Citation Envoyé par fichierctl.txt
    LOAD DATA
    INFILE '/home/oracle/test_essai.rpt'
    append
    INTO TABLE essaie_{a}
    FIELDS TERMINATED BY '|' OPTIONALLY ENCLOSED BY '"'
    TRAILING NULLCOLS
    (date,nom,prenom,age)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    a=$(date "+%Y%m" --date=''0' days ago')
    cat fichierctl.txt |sed s/{a}/$a/g > fichierdujour.ctl
    ce qui donne à la fin
    Citation Envoyé par fichierdujour.ctl
    LOAD DATA
    INFILE '/home/oracle/test_essai.rpt'
    append
    INTO TABLE essaie_200808
    FIELDS TERMINATED BY '|' OPTIONALLY ENCLOSED BY '"'
    TRAILING NULLCOLS
    (date,nom,prenom,age)
    Evidemment si qqu'un trouve le moyen de détourner le $a afin qu'il soit récupéré avec la valeur de la variable...ce serait bcp mieux.

  6. #6
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 15
    Par défaut
    Bonjour,


    Je ne connais pas trop ce genre de fichier.

    Cepandant, je trouve "bizard" la définition de la variable a.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    a=$(date "+%Y%m" --date=''0' days ago')
    La parenthèse qui ferme la définition est en commentaire...

    Je me trompe, ou il y a un problème à ce niveau ?

    @+

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

Discussions similaires

  1. Problème avec les fichiers en C++
    Par snatch321 dans le forum C++
    Réponses: 7
    Dernier message: 09/05/2006, 19h07
  2. Problème avec un fichier .BAT
    Par jbidou88 dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 01/05/2006, 13h03
  3. Problème avec un fichier .BAT
    Par jbidou88 dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 26/04/2006, 14h55
  4. Problème avec des fichiers
    Par Stany dans le forum C++
    Réponses: 7
    Dernier message: 17/10/2005, 16h53
  5. Problème avec les fichiers .JPG
    Par cprogil dans le forum Langage
    Réponses: 5
    Dernier message: 10/06/2003, 15h44

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