tester un retour de query

Lists: pgsql-fr-generale
From: BPascal <pascal62fr(at)free(dot)fr>
To: pgsql-fr-generale(at)postgresql(dot)org
Subject: tester un retour de query
Date: 2009-01-08 10:06:25
Message-ID: 4965D021.3050309@free.fr
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-fr-generale

Bonjour,
Bonne année et bonne santé

Comment tester que le critère de recherche dans $query_identite ne
correspond à aucune ligne.

*$result_identite = pg_query($query_identite) ;
if( $result_identite ) {
$l_identite = pg_fetch_array( $result_identite, null,
PGSQL_NUM);*
}

La solution que j'ai trouvé est de tester la valeur $l_identite[0] qui
ne peut pas être null.

A+
--
Pascal Brognez


From: François Figarola <francois(dot)figarola(at)i-consult(dot)fr>
To: BPascal <pascal62fr(at)free(dot)fr>
Cc: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: tester un retour de query
Date: 2009-01-08 10:14:35
Message-ID: 4965D20B.5000609@i-consult.fr
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-fr-generale

BPascal a écrit :
> Bonjour,
> Bonne année et bonne santé
>
>
> Comment tester que le critère de recherche dans $query_identite ne
> correspond à aucune ligne.
>
>
> *$result_identite = pg_query($query_identite) ;
> if( $result_identite ) {
> $l_identite = pg_fetch_array( $result_identite, null,
> PGSQL_NUM);*
> }
>
>
> La solution que j'ai trouvé est de tester la valeur $l_identite[0] qui
> ne peut pas être null.
>
> A+
> --
> Pascal Brognez
>
Bonjour,

Il me semble possible de faire appel à la fonction
pg_num_rows pour obtenir le nombre de tuples
retournés par la requête, genre :

if (pg_num_rows(*$result_identite*) == 0)
....

Cordialement.

--
François Figarola
-- développeur --
=================
INTERNET CONSULT
Mas Guerido
6 rue Aristide Bergès
66330 CABESTANY

Tel 04.68.66.09.29
fax 04.68.66.99.50
* francois(dot)figarola(at)i-consult(dot)fr


From: Marc Cousin <mcousin(at)sigma(dot)fr>
To: pgsql-fr-generale(at)postgresql(dot)org
Cc: François Figarola <francois(dot)figarola(at)i-consult(dot)fr>, BPascal <pascal62fr(at)free(dot)fr>
Subject: Re: tester un retour de query
Date: 2009-01-08 12:33:42
Message-ID: 200901081333.43358.mcousin@sigma.fr
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-fr-generale

Le Thursday 08 January 2009 11:14:35 François Figarola, vous avez écrit :
> BPascal a écrit :
> > Bonjour,
> > Bonne année et bonne santé
> >
> >
> > Comment tester que le critère de recherche dans $query_identite ne
> > correspond à aucune ligne.
> >
> >
> > *$result_identite = pg_query($query_identite) ;
> > if( $result_identite ) {
> > $l_identite = pg_fetch_array( $result_identite, null,
> > PGSQL_NUM);*
> > }
> >
> >
> > La solution que j'ai trouvé est de tester la valeur $l_identite[0] qui
> > ne peut pas être null.
> >
> > A+
> > --
> > Pascal Brognez
>
> Bonjour,
>
> Il me semble possible de faire appel à la fonction
> pg_num_rows pour obtenir le nombre de tuples
> retournés par la requête, genre :
>
> if (pg_num_rows(*$result_identite*) == 0)
> ....

Par contre, si l'ordre SQL n'implémente qu'un test d'existence (j'ai un doute
vu la formulation de la question), pas la peine de demander à postgreSQL
d'aller chercher TOUS les enregistrements correspondant à la clause where, un
seul enregistrement suffit => rajouter un LIMIT 1 à la requête.


From: BPascal <pascal62fr(at)free(dot)fr>
To: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: tester un retour de query
Date: 2009-01-08 14:07:04
Message-ID: 49660888.70709@free.fr
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-fr-generale

François Figarola a écrit :

Bonjour,

>> Comment tester que le critère de recherche dans $query_identite ne
>> correspond à aucune ligne.
>>
> Bonjour,
>
> Il me semble possible de faire appel à la fonction
> pg_num_rows pour obtenir le nombre de tuples
> retournés par la requête, genre :
>
> if (pg_num_rows(*$result_identite*) == 0)
> ....
>
Ce test convient bien, car une valeur supérieur à 1 n'est pas
acceptable; (je n'y avais pas pensé avant).
Merci

A+
--
Pascal


From: BPascal <pascal62fr(at)free(dot)fr>
To: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: tester un retour de query
Date: 2009-01-08 14:26:33
Message-ID: 49660D19.6020000@free.fr
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-fr-generale

Marc Cousin a écrit :

Bonjour,

> Par contre, si l'ordre SQL n'implémente qu'un test d'existence (j'ai un doute
> vu la formulation de la question), pas la peine de demander à postgreSQL
> d'aller chercher TOUS les enregistrements correspondant à la clause where, un
> seul enregistrement suffit => rajouter un LIMIT 1 à la requête.
>
>
J'utilise les valeurs lues (update ou insert selon le cas).

Par la suite j'aurais besoin de LIMIT, pour ne pas avoir un tableau trop
long, mais je ne vois pas trop comment écrire "la" requête pour lire les
50 premières lignes puis les 50 suivantes etc. , (je n'ai pas cherché
non plus).

A+
--
Pascal