Re: How can I bind query parameters to variables ?

Re: How can I bind query parameters to variables ?

am 19.05.2009 14:59:59 von Timothy Madden

On Mon, May 18, 2009 at 9:13 PM, Timothy Madden wr=
ote:
> Hello
>
> I am using PostgreSQL 8.3.7 and psqlODBC 08.03.0400.
>
> I would like to prepare queries with parameters and bind the
> parameters to php variables on execution.
> I use php 5.2.9-1 with dbg-2.15.5 with PDO and PDO_ODBC drivers on
> Windows XP (SP3).
>
> When I use
> =A0 =A0 =A0 =A0 PDOStatement->bindParam(parameter, value, type)
> and then execute the INSERT statement I get no error but no record is ins=
erted !
>
[...]
>
> Do you know what can I do to get the bindParam() php call working ? Am
> I doing something wrong ?
>
> I want to insert/fetch BIT VARYING columns ("AttachmentsData") with
> bindParam, and it does not work.
> Using a php string instead of a stream is I think a bad ideea, as file
> attachments can be arbitrary large.

Ok I got it: I forgot to call PDOStatement->execute() after the calls to
bindParam() to bind php variables to query parameters. My fault !

Still the problem is I could not use Large Object data type in ODBC to
insert values
in my BIT VARYING column. It said the parameter is of type lo, which I
created as in
the how-to, but the columns is BIT VARYING. Using CAST() on the
parameter did not
help. :(


Thank you
Timothy Madden

--=20
Sent via pgsql-odbc mailing list (pgsql-odbc@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-odbc

Re: How can I bind query parameters to variables ?

am 19.05.2009 18:43:24 von Rainer Bauer

Hello Timothy,

TM> Still the problem is I could not use Large Object data type in
TM> ODBC to insert values in my BIT VARYING column. It said the
TM> parameter is of type lo, which I created as in the how-to, but the
TM> columns is BIT VARYING. Using CAST() on the parameter did not
TM> help. :(

I don't think you will ever be happy if you try to use a bit field to
store binary data. Use bytea [1] instead (the 'lo' type has the
disadvantage the the data is not stored inside the table).

Note that the support for BIT VARYING was dropped in SQL:2003 [2].
SQL:2003 has the BLOB datatype to store binary data and SQL:2008 will
have 2 new types: BINARY and BINARY VARYING.

Rainer

[1]
[2]


--
Sent via pgsql-odbc mailing list (pgsql-odbc@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-odbc