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

 Oracle Discussion :

Boucle sur un tableau de variable en SQL


Sujet :

Oracle

  1. #1
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut Boucle sur un tableau de variable en SQL
    bonjour

    j'ai une liste de couple clef valeur et je voudrais faire un script SQL

    qui pour chaque couple fasse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE TableName
    SET colName=$value
    WHERE colKey=$key
    mes couples ne sont pas dans une table c'est dans le script
    je peux écrire autant de fois la requête que de couple

    mais s'il existe une façon de faire un tableau associatif et un boucle ce sera plus facile à maintenir

    je ne sais pas sur quel type de machine tourne le serveur oracle je ne peux donc compter que sur un script sql

    merci

    A+JYT

  2. #2
    Membre très actif Avatar de star
    Homme Profil pro
    .
    Inscrit en
    Février 2004
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Corée Du Nord

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Février 2004
    Messages : 940
    Par défaut
    Etant sur le forum Oracle, le seul outil procédural proposé est le PL/SQL. Tu pourrais rentrer tes couples dans un fichier plat et les lire au moyen du package DBMS_FILE pour effectuer tes mises à jour.
    .

  3. #3
    Membre averti
    Inscrit en
    Septembre 2009
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 17
    Par défaut
    salut,
    tu peux faire mieux en utilisant les tables externes et des requêtes corrélatives par exemple;
    UPDATE TableName outer
    SET colName=(select value from externetable inner
    WHERE outer.colKey=inner.key)
    mais à condition que le champ key dans externtable soit unique pour qu'il ne renvoit qu'une seule valeur value à l'update.

  4. #4
    Membre confirmé
    Inscrit en
    Août 2009
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Août 2009
    Messages : 107
    Par défaut
    Bonjour,

    un exemple de petit tableau associatif
    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
    SQL> set serveroutput on 
    declare
         TYPE myvalue_type IS TABLE OF VARCHAR2(20) INDEX BY VARCHAR2(30);
         myvalue myvalue_type;
     begin
         myvalue('key1') := 'value1';
         myvalue('key2') := 'value2';
         DBMS_output.put_line(myvalue('key1'));
     end;
    /SQL>   2    3    4    5    6    7    8    9  
    value1
     
    PL/SQL procedure successfully completed.
     
    SQL>

  5. #5
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    Merci c'est le genre de chose que je cherche à faire

    merci je vais essayer ça

    A+JYT

Discussions similaires

  1. Explication pour une boucle sur un tableau ( débutant)
    Par serna dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 07/04/2015, 10h44
  2. [XL-2007] Boucle sur un tableau nommé
    Par thorgal1612 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/11/2014, 10h10
  3. boucle sur checkbox avec nom variable
    Par LaMite dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/05/2014, 18h01
  4. [XL-2010] Boucle sur un tableau
    Par octane dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/05/2013, 02h47
  5. [Tableaux] Boucle sur un tableau associatif
    Par alexfrere dans le forum Langage
    Réponses: 11
    Dernier message: 28/06/2006, 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