Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/11/2006, 10h02   #1
Membre à l'essai
 
Inscription : février 2004
Messages : 59
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 59
Points : 23
Points : 23
Par défaut Variable dans la clause from ?

Bonjour,

Je débute sur Postgre et j'aurais une question toute bête, masi je n'ai pas su trouver la réponse sur ce forum.

Celà ne fonctionne pas dans une procédure stockée :

Code :
1
2
3
4
5
6
7
8
9
10
 
declare
  ll_identity integer;
  ls_table varchar;
begin
  ls_table = 'connexion' ;
  SELECT con_id INTO ll_identity FROM ls_table ;
 
  RETURN ll_identity;
end;
ERROR: syntax error at or near "$1" at character 22
QUERY: SELECT con_id from $1

Apparament il ne veut pas de mon ls_table car si je le remplace directement par 'connexion', ca fonctionne.

Comment puis-je faire celà svp ?

Merci pour votre aide



[EDIT]

Je viens de trouver une solution temporaire et pas très propre mais je n'arrive pas à trouver mieux

Code :
1
2
3
4
5
6
 
ls_sequence = 'connexion' ;
 
FOR rec IN EXECUTE('SELECT con_id FROM ' || ls_sequence || ' WHERE con_id=856') loop
    ll_identity := rec.con_id;
end loop ;
Dieu que c'est vilain, quelle est la solution svp
All Jinx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2006, 11h38   #2
Membre à l'essai
 
Avatar de Matmal11
 
Inscription : juillet 2006
Messages : 111
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : juillet 2006
Messages : 111
Points : 21
Points : 21
tu mets ":" devant le nom de ta variable et cela devrait fonctionner.

Code :
SELECT con_id INTO ll_identity FROM :ls_table ;
Matmal11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h33.


 
 
 
 
Partenaires

Hébergement Web