Thread: PQexecParams and types
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.
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
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 >
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