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

PL/SQL Oracle Discussion :

Update a partir d'un fichier


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Avril 2010
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 1
    Par défaut Update a partir d'un fichier
    Bonjour,
    je suis un peu bloque et je n ai jamais utilise PL/SQL donc avant de me lancer je voudrais svoir si c est possible et avoir des infos pour le faire.

    En base, j ai ca (tres simplifie) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    specnum date  ccy   id   rate
    0       2010  eur  eod    0.032
    0       2010  eur  eod    0.50
    1       2010  eur  eod    0.1975
    1       2010  eur  eod    0.1975
    1       2010  eur  eod    0.2000
    1       2010  eur  eod    0.1328
    2       2010  eur  eod    0.1975
    J'ai besoin de faire des modifications sur les valeurs de la colonne rate (pour resumer la valeur au rang n doit etre n moins n-1) et seul les lignes ou specnum veut 1 m interesse. Bref avec la requete suivante j'obtiens ce que je veux (en realite il y a beaucoup lus que 4 resultat) et je place le resultat dans un fichier txt avec un pipe.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT o.MIDRATE
    FROM dmmktdata p, dmmktpoint o
    where p.ccy = 'USD' 
    AND p.dmindex = 'OIS' AND p.ID = 'EODDT' 
    AND p.ASOFDATE = '20100407'
    AND o.DMSPECNUM='1'
    AND p.dmmktdataid=o.dmmktdataid;
    Avec un script perl je fais les operations necessaires. Puis je dois importer en base et c'est la ou je bloque.
    Je veux utiliser UPDATE nom_table SET MIDRATE = ligne_correspondante_fichier ...
    mais je dois l inserer dans la bonne ligne et c est la ou je coince.

    Est ce que vous pourriez m'eclairer la dessus.
    2eme question est ce que je ne pourrais pas faire tout ca dans un seul script PL/SQL au lieu d'avoir un script sql qui ecrit dans un txt, un perl qui modifie le txt pus un autre script pour updater

    Merci

    P.S:sorry clavier anglais j'ai pas les accents.

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Chaque ligne de chaque table Oracle a un identifiant unique que vous pouvez probablement utiliser, le rowid.

    Pour votre deuxième point ce serait largement préférable, que fait votre script PERL au juste ?

Discussions similaires

  1. [MySQL] UPDATE bdd à partir liste ou fichier, comment faire ?
    Par gestgm dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 30/08/2010, 16h48
  2. [SSIS] [2K5] Update insert à partir d'un fichier plat
    Par satanas313 dans le forum SSIS
    Réponses: 1
    Dernier message: 26/06/2009, 14h51
  3. Update à partir d'un fichier
    Par keitaro_bzh dans le forum Requêtes
    Réponses: 6
    Dernier message: 18/06/2009, 09h04
  4. [12.6]Update à partir d'un fichier
    Par DroP dans le forum Adaptive Server Enterprise
    Réponses: 6
    Dernier message: 17/09/2007, 16h39
  5. [CSV] Update BDD à partir de fichier xls ou csv
    Par masseur dans le forum Langage
    Réponses: 2
    Dernier message: 03/07/2007, 14h51

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