PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 15/04/2013 14:53:53

doha-i2m
Membre

stockage et parcourt d'un tableau dynamique

Salut,
est-ce que je peux stocker et parcourir un tableau dynamique en pgsql, si oui comment faire?
par exemple :
je déclare (dans une fonction) un tableau : tab text ARRAY[];
à chaque fois je veux stocker une variable.
puis je fais le parcourt.

Merci d'avance

Hors ligne

#2 15/04/2013 15:30:36

MitsuTomoe
Membre

Re : stockage et parcourt d'un tableau dynamique

Extrait d'une fonction qui fait ça :

totdiff                     integer;
lstbien                     integer[];
vidbien                     integer;
vidbientest                 integer;
...
totdiff:=totdiff+1;
lstbien[totdiff] := vidbien;
...
IF (lstbien IS NOT NULL) THEN
     FOREACH vidbientest IN ARRAY lstbien LOOP
            ...
      END LOOP;
END IF;

C'est ce que vous cherchez ? Je précise que je suis en 9.2, la syntaxe FOREACH... IN ARRAY est
valable à partir de la 9.1, voir FOREACH IN ARRAY en 9.1
Avant, il faut utiliser unnest (exemple tiré du lien ci-dessus) :

FOR t IN SELECT unnest( in_array ) LOOP
raise notice 't: %', t;
END loop;

Alex

Hors ligne

#3 15/04/2013 15:38:25

doha-i2m
Membre

Re : stockage et parcourt d'un tableau dynamique

Merci bien , je vais tester cela, je suis en 9.1 normalement ça va marcher.

Hors ligne

Pied de page des forums