|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
Bonjour,
Comment se fait-il qu'avec une procédure stockée postgresql me retourne les données sous ce format : (93,04,04070,4,ALPES-DE-HAUTE-PROVENCE) alors que si je fais une vue ou une requête sql de mon fichier php j'ai les résultats en colonne ? Merci |
|
|
00
|
|
|
#2 | ||
|
Membre émérite
![]() ![]() Inscription : mars 2002 Messages : 770 ![]() |
Essaye quelque chose comme :
Code :
pour appeler la fonction : Code :
SELECT * FROM cherchelistedpt() AS (champ1 char(2), champ2 char(2), champ3 char(4), champ4 int2, champ5 varchar) |
||
|
|
00
|
|
|
#3 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
Merci beaucoup ça fonctionne !
mais que ça à l'air compliqué, peux-tu m'expliquer les instructions ? Merci |
|
|
00
|
|
|
#4 |
|
Membre émérite
![]() ![]() Inscription : mars 2002 Messages : 770 ![]() |
Il s'agit d'une procedure stockée en pl/pgsql.
RETURNS SETOF record : il me retourne un ensemble (SETOF) de tuple (record) Declare rec RECORD; -- je declare mon tuple temporaire FOR rec IN SELECT ....... -- boucle sur les tuples de la requete RETURN NEXT rec -- je passe au prochain tuple et ainsi de suite jusqu'a la fin des enreg Pour recuperer les valeurs, c'est pas evident si on connait pas, la procedure devient une sorte de table (d'où SELECT ... FROM maprocedure) la partie AS (champ1 char(2), .. indique les champs de sortie car par avance le select ne sait pas les colonnes qui seront retournées. |
|
|
00
|
|
|
#5 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
Je comprends pourquoi je galère comme un fou effectivement. Moi qui ai travaillé avec Sql server je n'ai pas rencontré ces soucis.
Où puis-je trouver des infos pour bosser ce sujet ? Je présume que la syntaxe doit être encore plus compliquée si je ne sélectionne que quelques colonnes ou si je fais passer des paramètres. |
|
|
00
|
|
|
#6 |
|
Expert Confirmé Sénior
![]() ![]() Inscription : mai 2004 Messages : 4 490 ![]() |
Bonjour,
la syntaxe n'est pas très compliquée, ce n'est qu'une question d'habitude... Un tutoriel (en anglais) pour écrire des procédures stockées renvoyant des jeux d'enregistrement : http://techdocs.postgresql.org/guide...rningFunctions
__________________
FAQ XML ------------ « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser » Giacomo Leopardi |
|
|
00
|
|
|
#7 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
je me doute...
mais si quelqu'un d'expert pouvait faire quelques tutos ce serait le bonheur !!! |
|
|
00
|
|
|
#8 |
|
Membre émérite
![]() ![]() Inscription : mars 2002 Messages : 770 ![]() |
J'y avais pensé mais dans un premier temps, je vais plutot l'integrer dans la faq qui je suis en train de preparer.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com