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 :

Parcourir un tableau dont l'index est de type VARCHAR2 [9i]


Sujet :

PL/SQL Oracle

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 113
    Points : 49
    Points
    49
    Par défaut Parcourir un tableau dont l'index est de type VARCHAR2
    Salut !

    voilà j'ai un tableau comme suit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    	TYPE T_CHGMT IS RECORD (
    	init VARCHAR2(9),
    	new VARCHAR2(9),
    	nombre NUMBER(10));
     
    	TYPE T_TAB_CHGMT IS TABLE OF T_CHGMT INDEX BY VARCHAR2(18);
     
    	TAB_CHGMT T_TAB_CHGMT;

    Et j'aimerais savoir comment le parcourir ?

    car avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FOR i IN TAB_CHGMT.FIRST .. TAB_CHGMT.LAST LOOP
    J'obtiens :
    ORA-06502: PL/SQL : erreur numérique ou erreur sur une valeur: erreur de conversion des caractères en chiffres
    Merci d'avance

  2. #2
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Essayez d'utiliser FIRST et NEXT comme dans cet exemple.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 113
    Points : 49
    Points
    49
    Par défaut
    ça marche merci !

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    voici un example

    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
    declare
    type rectype is record (
    n emp.empno%type,
    nom emp.ename%type
    );
     
    type tabtype is table of rectype index by pls_integer;
     
    v_tabtype tabtype;
     
    cursor c is select empno, ename from emp;
    i number:=1;
    begin
    open c;
    loop
    fetch c into v_tabtype(i);
    exit when c%notfound;
    dbms_output.put_line(v_tabtype(i).n||'   '||v_tabtype(i).nom);
    i:=i+1;
    end loop;
    close c;
    end;
    /

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 04/12/2012, 19h04
  2. parcourir une boucle dont la variable est une date
    Par coquero dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 30/08/2011, 11h39
  3. Réponses: 6
    Dernier message: 28/07/2010, 14h49
  4. Réponses: 7
    Dernier message: 27/05/2008, 10h54
  5. longueur de tableau dont le nom est passé en paramètre
    Par max.onyx dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 09/06/2006, 19h54

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