Re: Fwd: [PHP-BUG] Bug #73234 [NEW]: emulated statementslet value dictate parameter type

From: Date: Tue, 04 Oct 2016 14:20:46 +0000
Subject: Re: Fwd: [PHP-BUG] Bug #73234 [NEW]: emulated statementslet value dictate parameter type
References: 1 2 3 4 5 6  Groups: php.internals 
Request: Send a blank email to internals+get-96218@lists.php.net to get a copy of this message
Hi, On 04/10/2016 16:15, Adam Baratz wrote: >> >>>> Well, I'm pretty sure Postgres won't be affected either way, because >> its type system is such that you can't prepare a query where the types of >> parameters can't be decided yet. A query like this simply gives an error. >>> >>> Firebird, oracle and mysql would have exactly the same problem. The >>> prepare SQL script is invalid so prepare fails. If it works for dblib >>> then I would consider THAT the bug. Parameters can only be assigned to >>> fields identified in the prepared SQL. In this case :null has nothing to >>> identify what it is to be prepared to populate. >> >> This is about *emulated* prepares, and AFAIK that means that the >> database will never see the prepared statement. > > > That's correct, but you can enable emulated prepares for whichever driver. > A less confusing example might've been inserting :null into a nullable INT > column and verifying that NULL was stored. That's not ture. If memory serves, emulated prepares are only available supported by the mysql and pgsql pdo drivers. Cheers -- Matteo Beccati Development & Consulting - http://www.beccati.com/

« previous php.internals (#96218) next »