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 :

[PL/SQL] parcours de curseur


Sujet :

Oracle

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 81
    Points : 77
    Points
    77
    Par défaut [PL/SQL] parcours de curseur
    Bonjour,

    Lors d'un parcours d'un curseur avec une boucle FOR du ce style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    FOR rec IN mon_curseur LOOP
      affiche rec.nom_de_colonne
    END LOOP;
    si le "nom_de_colonne" est une variable, ça ne marche pas. Comment palier à ce problème?

    Voici mon exemple concret:
    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
    22
    23
    24
     
    ...
    IS
      -- curseur qui contient les noms de colonne de la table TEMP
      CURSOR c_col_temp IS
        SELECT COLUMN_NAME
        FROM USER_TAB_COLUMNS
        WHERE TABLE_NAME='TEMP'
        ORDER BY COLUMN_ID;
      -- Curseur qui contient les enregistrements de la table TEMP
      CURSOR c_temp IS
        SELECT * FROM TEMP;
      VL_TEMP VARCHAR(10);
    BEGIN
      FOR rec IN c_col_temp LOOP
           VL_TEMP := rec.COLUMN_NAME;
           htp.p(VL_TEMP);
           FOR rec_temp IN c_temp LOOP
             -- Erreur ici à cause de la variable VL_TEMP :-((
             htp.p(rec_temp.VL_TEMP);
           END LOOP;
           htp.p('<br>');
         END LOOP;
    END;
    Merci.

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    je te conseille de t'orienter plutôt vers le SQL dynamique (cf article sur DVP)

    Par ailleurs merci d'éviter de recréer des sujets qui traitent d'une même problèmatique

    Enfin, si tu nous expliquer ce que tu cherches à faire, nul doute qu'on pourrait t'aider plus efficacement... à noter qu'on n'a toujours pas la version d'Oracle utilisée

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 81
    Points : 77
    Points
    77
    Par défaut
    Le cas présenté ici n'est qu'un exemple, le problème est que je ne connais par les noms des colonnes de la table TEMP à l'avance. Je créer donc un curseur qui contient ces noms de colonnes (c_col_temp). Ensuite, j'aimerais parcourire ma table TEMP (2ème boucle FOR) et afficher la colonne qui se trouve dans la variable (VL_TEMP). Mais cela ne fonctionne pas.
    Est-ce une erreur de syntaxe de ma part ou est-ce le language qui ne permet pas de parcourir un enregistrement si on ne connait pas le nom de la colonne (rec_temp.mavar) ?
    Sinon existe il un moyen de parcour l'enregistrement en question selon un numero de colonne (1ere colonne, 2ème colonne,...) ou alors avec un next?
    Toutes idées sont les bienvenues!


    p.s.: version --> Oracle 9i

  4. #4
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 81
    Points : 77
    Points
    77
    Par défaut
    help

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    bis repetita : sans sql dynamique point de salut

  6. #6
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Cela est peut-etre possible avec le package DBMS_SQL
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  7. #7
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 81
    Points : 77
    Points
    77
    Par défaut
    le problème est qu'il n'arrive pas à m'interpréter la variable...
    J'ai essayer de la construire avant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    VL_STRING := 'rec_temp.' || VL_TEMP
    mais marche pas, je vous dis si je trouve qqch...[/quote]

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    Non, le problème c'est que tu n'es pas assez précis et surtout qu'on a toujours aucune idée du message d'erreur

  9. #9
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 81
    Points : 77
    Points
    77
    Par défaut
    Ok, sorry, je ressaie tout depuis le début:

    Problème de base :

    Lors d’un parcours d’un curseur avec une boucle FOR ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    FOR rec IN mon _curseur LOOP
     
      affiche rec.nom_colonne
     
    END LOOP ;
    si le « nom_colonne » est une variable, ça ne fonctionne pas.

    Sur mon cas pratique :

    J’ai une table TEMP qui est générée par des procédures d’export. Cette table TEMP se présente comme un tableau avec comme colonnes les NOMVAR et comme lignes, les MEMBRES :



    Je ne connais pas les noms des colonnes à l’avance !

    J’aimerais maintenant parcourir cette table via un curseur (c_temp) et pour chaque cellule, avoir le NOMVAR (colonne) et le MEMBRES (ligne) une fois ces trois infos, je lancerai mes fonctions d’import.
    Etant donné que je ne connais pas les noms de colonnes, je les récupère dans un curseur (c_col_temp).
    Maintenant, j’aimerais parcourir mon curseur c_temp, mais si le nom de colonne spécifié dans la boucle FOR est une variable, ça foire…

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
          ...
     
          IS
     
          CURSOR c_temp IS
     
           SELECT * FROM TEMP;
     
          CURSOR c_col_temp IS
     
           SELECT COLUMN_NAME
     
           FROM USER_TAB_COLUMNS
     
           WHERE TABLE_NAME='TEMP'
     
           ORDER BY COLUMN_ID;
     
         ...
     
         BEGIN
     
     
     
    FOR rec IN c_temp LOOP
     
           VL_CODEMENAGE := rec.MEMBRES;
     
           FOR rec_col IN c_col_temp LOOP
     
             VL_NOMVARIABLE := rec_col.COLUMN_NAME;
     
             VL_CELLULE := rec.VL_NOMVARIABLE;  -- marche pas !
     
             -- ici je lancerai mes fonctions avec mes trois valeur (ligne, colonne et cellule)
     
           END LOOP;
     
         END LOOP;
     
          ...
    erreur:
    (1): PLS-00302: component 'VL_NOMVARIABLE' must be declared
    (2): PL/SQL: Statement ignored
    --> Il n'arrive pas à interpréter la variable...

    Voilà, je ne sais pas si c’était compréhensible, je me suis un peu emballé avec le cas pratique, mais le problème de base c’est bien que pour parcourir un enregistrement précis, je suis obligé de connaître les noms de colonnes de la table et de les spécifier en « dur » !

    -----------------------------

    Vue que cette solution ne marche pas, j'ai essayer en utilisant un curseur paramétrable:

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    PROCEDURE IMPTABLETEMP
       IS
         VL_CODEMENAGE   VARCHAR2(10);
         VL_NOMVARIABLE  VARCHAR2(10);
         VL_CELLULE  VARCHAR2(10);
         CURSOR c_temp IS
           SELECT * FROM TEMP;
         CURSOR c_col_temp IS
           SELECT COLUMN_NAME
           FROM USER_TAB_COLUMNS
           WHERE TABLE_NAME='TEMP'
           ORDER BY COLUMN_ID;
         CURSOR c_cellule(pc_vari in varchar2, pc_menage in varchar2) IS
           SELECT pc_vari FROM TEMP WHERE MEMBRES = pc_menage;
       BEGIN
        FOR rec IN c_temp LOOP
           VL_CODEMENAGE := rec.MEMBRES;
           FOR rec_col IN c_col_temp LOOP
             -- aff. membre
             htp.p(VL_CODEMENAGE);
             VL_NOMVARIABLE := rec_col.COLUMN_NAME;
             -- aff. vari
             htp.p(VL_NOMVARIABLE);
             OPEN c_cellule(VL_NOMVARIABLE, VL_CODEMENAGE);
             FETCH c_cellule INTO VL_CELLULE;
             CLOSE c_cellule;
             -- aff. cellule
             htp.p(VL_CELLULE);
             htp.p(' - ');
             -- ici je lancerai mes fonctions avec mes trois valeur (ligne, colonne et cellule)
           END LOOP;
           htp.p('<br>');
           htp.p('<br>');
         END LOOP;
       END;
    END;
    Là, pas d'erreur de compilation mais il m'affiche le nom de la colonne passée en paramètre et nom son contenu !!!

    Apparemment on ne peut pas passé le nom d'une colonne de table dasn un curseur paramétrable...

    J'ai également tanté qqch avec execute immediate mais sans succès!

    Bref, je patauge!

    Voilà, en esspérant avoir été plus complet...

    Sinon, j'utilise la version 9i.

    Merci bcp!

  10. #10
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Voici un cas d'école très basique mais qui donne le résultat escompté.
    a adapter à vos besoins bien sûr

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    SQL> set serveroutput on
    SQL> DECLARE
      2    TYPE typ_tab IS TABLE OF VARCHAR2(256) INDEX BY BINARY_INTEGER ;
      3    col1 typ_tab ;
      4    col2 typ_tab ;
      5    col3 typ_tab ;
      6    CURSOR CC IS SELECT * FROM BIGTABLE WHERE id < 10 ;
      7  BEGIN
      8    OPEN CC ;
      9    FETCH CC BULK COLLECT INTO col1, col2 ;
     10    CLOSE CC ;
     11    FOR i IN col1.first .. col1.last LOOP
     12      dbms_output.put_line( 'col1 = ' || col1(i) ) ;
     13    END LOOP ;
     14  END;
     15    
     16  /
    col1 = 1
    col1 = 2
    col1 = 3
    col1 = 4
    col1 = 5
    col1 = 6
    col1 = 7
    col1 = 8
    col1 = 9
     
    Procédure PL/SQL terminée avec succès.
     
    SQL>
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    Citation Envoyé par SheikYerbouti
    Voici un cas d'école très basique mais qui donne le résultat escompté.
    on pourrait même parler du cas "des col"

  12. #12
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 81
    Points : 77
    Points
    77
    Par défaut
    Pour ceux qui ont suivi le trip, j'ai trouvé qqch qui me permet d'aller chercher mes 3 valeurs et surtout une cellule selon le nom de la colonne et le nom de la ligne:

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    PROCEDURE IMPTABLETEMP
       IS
         --VL_TABPKVVARI   t_pk;
         --VL_TABPKVMENAGE t_pk;
         VL_CODEMENAGE   VARCHAR2(10);
         --VL_NUMINSTITUT  NUMBER(8);
         VL_NOMVARIABLE  VARCHAR2(10);
         VL_CELLULE  VARCHAR2(10);
         CURSOR c_temp IS
           SELECT * FROM TEMP;
         CURSOR c_col_temp IS
           SELECT COLUMN_NAME
           FROM USER_TAB_COLUMNS
           WHERE TABLE_NAME='TEMP'
           ORDER BY COLUMN_ID;
         VL_REQ VARCHAR2(200);
       BEGIN
        --test avec EXECUTE IMMEDIAT
        FOR rec IN c_temp LOOP
           VL_CODEMENAGE := rec.MEMBRES;
           FOR rec_col IN c_col_temp LOOP
             -- aff. membre
             htp.p(VL_CODEMENAGE);
             VL_NOMVARIABLE := rec_col.COLUMN_NAME;
             -- aff. vari
             htp.p(VL_NOMVARIABLE);
             -- Construction de la requête qui va me chercher le contenu de la cellule selon
             -- la ligne (VL_CODEMENAGE) et la colonne (VL_NOMVARIABLE)
             VL_REQ := 'SELECT ' || VL_NOMVARIABLE || ' FROM TEMP WHERE MEMBRES =' ||VL_CODEMENAGE;
             EXECUTE IMMEDIATE VL_REQ INTO VL_CELLULE;
             -- aff. cellule
             htp.p(VL_CELLULE);
             htp.p(' - ');
             -- ici je lancerai mes fonctions avec mes trois valeur (ligne, colonne et cellule)
           END LOOP;
           htp.p('<br>');
           htp.p('<br>');
         END LOOP;
    N'empêche que, y'a tout de même qqch qui me laisse perplexe:
    Pour parcourir un curseur de ligne en ligne (ou d'enregistrement en enregistrement), pas de problème (boucle FOR). Mais un fois sur une ligne (ou enregistrement), impossible de parcourir de colonne en colonne sans connaître et spécifier en dur dans le code le nom de la colonne!?

    Enfin bref, mon problème semble résolu pour l'instant. Meci à vous et désolé de vous avoir fait perdre du temp.

    Et désolé pour la clarté des choses, mais impossible d'exposer tout le cas pratique dans lequel ce problème s'insère.... j'ai essayé de simplifier mais apparement en causant des manques de clarté.

    D'ores et déjà bon-week-end à tous!

  13. #13
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    c'est à dire que l'on est tout de même sensé, lorsque qu'on travaille sur une table, en connaître les colonnes.
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  14. #14
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 81
    Points : 77
    Points
    77
    Par défaut
    @SheikYerbouti:
    Ben normalement oui, mais pas dans mon cas.
    La table dont on parle est une table temporaire créer par des procédures d'export. les colonnes de cette table dépendent des paramètres saisi par l'utilisateur lors de l'export...
    Et je suis sûr que l'on peut trouver (plein) d'autres cas où on ne connaît pas les colonnes de la table à l'avance.
    Je vous redis si j'apprends des trucs à ce sujet...
    Bon week-end!

  15. #15
    Membre expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Points : 3 199
    Points
    3 199
    Par défaut
    Pour simplifier, vous avez une table "TOTO" dont le nom est connu mais pas la structure.
    Le but de la procédure est d'afficher le contenu de la table et ce, quels qu'en soient les colonnes ?

    je pense que la solution se trouve du côté du SQL dynamique et de la vue DBA_TAB_COLUMNS qui vous permettra de connaitres les colonnes et leur type de la table en question. ;-)

    Pour chaque ligne de la table toto (cur_Toto), vous parcourez chaque colonne de la vue sus-citée, avec une conversion en to_char et affichage, non ?
    (attention à la gestion des types "à problèmes" -LOB, LONG, ...)

  16. #16
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Le problème est de rendre dynamique la valeur des colonnes dans le record d'un LOOP ... FOR

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    nom_variable := 'ENAME' ;
    For Curseur in Cur_def Loop
       val_col_1 := Curseur || '.' || nom_variable ; -- impossible !!!
    End loop ;
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  17. #17
    Membre expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Points : 3 199
    Points
    3 199
    Par défaut
    Bien sûr, mais je pensais à quelque chose du genre, pour chaque ROWID de la table à afficher, et pour chaque colonne de la table :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    v_statement := 'SELECT '||Cur_Col.Colmun_Name||' FROM TOTO WHERE ROWID = '||Cur_Table_Toto.ROWID;
    execute immediate v_statement into LC_$Colonne;
    cur_col étant construit sur DBA_TAB_COLUMNS pour la table TOTO
    et cur_table_toto étant logiquement un select ROWID FROM TABLE TOTO;

    Ainsi dans LC_$Colonne il y a aura le contenu de chaque colonne (d'où le problème de conversion en varchar) et il ne restera plus qu'à concaténer au fur et à mesure dans une variable représentant toute la ligne de la table TOTO.

  18. #18
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Oui, mais cela oblige à lire 2 fois la table, un premier curseur pour ramener les ROWID et un select encore sur chaque ligne...
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  19. #19
    Membre expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Points : 3 199
    Points
    3 199
    Par défaut
    Certes, mais cette technique (imparfaite, je le reconnais volontiers) permet de manipuler toutes les colonnes d'une table qu'on ne connait pas, et c'est bien ça qui était demandé, non ?

    Et je n'ai pas vu d'autres solutions permettant d'atteindre cet objectif, non ?

  20. #20
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Oui, bien sûr cela fonctionne
    me solution tordue à base de collectione fonctionne également, mais ce n'est vraiment pas optimal...
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. PL/SQL Parcours Colonnes Curseur
    Par PoPmiSiR dans le forum Oracle
    Réponses: 2
    Dernier message: 23/11/2009, 18h17
  2. PL/SQL :Retourner un curseur dans une procédure
    Par madina dans le forum PL/SQL
    Réponses: 1
    Dernier message: 24/05/2006, 17h36
  3. [PL/SQL] Parcours des enregistrements contenus dans 1 curso
    Par lapartdombre dans le forum Oracle
    Réponses: 6
    Dernier message: 01/12/2005, 13h50
  4. Réponses: 5
    Dernier message: 23/02/2005, 09h43
  5. [PL/SQL] SQL Dynamique et curseur
    Par Loko dans le forum Oracle
    Réponses: 10
    Dernier message: 23/11/2004, 16h18

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