Re: requete parametre avec postgresql

From: Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
To: "Marie-Claude QUIDOZ" <Marie-Claude(dot)QUIDOZ(at)cefe(dot)cnrs(dot)fr>
Cc: <pgsql-fr-generale(at)postgresql(dot)org>
Subject: Re: requete parametre avec postgresql
Date: 2010-12-09 15:15:01
Message-ID: 87vd33j7uy.fsf@hi-media-techno.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

"Marie-Claude QUIDOZ" <Marie-Claude(dot)QUIDOZ(at)cefe(dot)cnrs(dot)fr> writes:
> Je souhaiterai vers des vues paramétrées (*) avec postgresql.

Il faut pour cela utiliser une procédure stockée, mais il est possible
de faire cela en simple SQL:

CREATE FUNCTION table_annee(annee date)
RETURNS SETOF table1
LANGUAGE SQL
AS $$
SELECT * FROM table1 WHERE annee = $1;
$$;

SELECT t.* FROM table_annee(current_date) as t;

Bien sûr le select * est à proscrire de toute procédure, mais sans le
nom des colonne l'exemple est difficile à écrire autrement.

> select * from table1 where annee=$1
> (*) ou des requêtes paramétrées

Pour les requêtes paramétrées, cela est supporté par PostgreSQL avec la
fonction PQexecParams(), exportée par la plupart des drivers (en PHP la
fonction est pg_query_params(), par exemple).

http://www.postgresql.org/docs/9.0/interactive/libpq-exec.html#LIBPQ-EXEC-MAIN

Il existe aussi les requêtes préparées qui sont tout à fait différentes
mais peut être pas hors-sujet, nous n'avons pas assez d'informations
pour en juger.

--
Dimitri Fontaine
http://2ndQuadrant.fr PostgreSQL : Expertise, Formation et Support

In response to

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Marie-Claude QUIDOZ 2010-12-10 12:38:03 client pphpadmin
Previous Message Cousin Florence 2010-12-09 12:36:00 Re: requete parametre avec postgresql