Thread: PQexecParams and types

PQexecParams and types

From
Czuczy Gergely
Date:
Hello

i've read in the docs to use the proper indexes both types must match in
the where clause, to achive this the user can simply put a string into the
side of the equation mark and pgsql will convert it automaticly. my
question is, when I'm using PQexecParams, should I give all the values as
a string, and it will be converted, or I have to figure out the type of
the given field somehow? i'm writing an interface for my php extension(i'm
not statisfied by the boundled), so i cannot figure out the type of the
fields in most cases. what should be done for the best performance in this
situation?


Bye,

Gergely Czuczy
mailto: phoemix@harmless.hu
PGP: http://phoemix.harmless.hu/phoemix.pgp

The point is, that geeks are not necessarily the outcasts
society often believes they are. The fact is that society
isn't cool enough to be included in our activities.


Re: PQexecParams and types

From
Tom Lane
Date:
Czuczy Gergely <phoemix@harmless.hu> writes:
> i've read in the docs to use the proper indexes both types must match in
> the where clause, to achive this the user can simply put a string into the
> side of the equation mark and pgsql will convert it automaticly. my
> question is, when I'm using PQexecParams, should I give all the values as
> a string, and it will be converted, or I have to figure out the type of
> the given field somehow?

You should leave the parameter types unspecified.  Their types will be
resolved in much the same way that a quoted literal is handled.

            regards, tom lane

Re: PQexecParams and types

From
Czuczy Gergely
Date:
hello

to leave it unspecified what value should I set to the paramTypes array?
and could you insert this answer to to docs, it could be useful


Bye,

Gergely Czuczy
mailto: phoemix@harmless.hu
PGP: http://phoemix.harmless.hu/phoemix.pgp

The point is, that geeks are not necessarily the outcasts
society often believes they are. The fact is that society
isn't cool enough to be included in our activities.

On Tue, 3 Feb 2004, Tom Lane wrote:

> Czuczy Gergely <phoemix@harmless.hu> writes:
> > i've read in the docs to use the proper indexes both types must match in
> > the where clause, to achive this the user can simply put a string into the
> > side of the equation mark and pgsql will convert it automaticly. my
> > question is, when I'm using PQexecParams, should I give all the values as
> > a string, and it will be converted, or I have to figure out the type of
> > the given field somehow?
>
> You should leave the parameter types unspecified.  Their types will be
> resolved in much the same way that a quoted literal is handled.
>
>             regards, tom lane
>


Re: PQexecParams and types

From
Tom Lane
Date:
Czuczy Gergely <phoemix@harmless.hu> writes:
> to leave it unspecified what value should I set to the paramTypes array?
> and could you insert this answer to to docs, it could be useful

It is in the docs:

    paramTypes[] specifies, by OID, the data types to be assigned to the
    parameter symbols. If paramTypes is NULL, or any particular element
    in the array is zero, the server assigns a data type to the
    parameter symbol in the same way it would do for an untyped literal
    string.

            regards, tom lane