On Wed, Nov 3, 2010 at 8:25 PM, Wez Furlong <king...@gmail.com> wrote:
>
> On Nov 3, 2010, at 9:52 PM, Stanley Sufficool wrote:
>
>> Before I gut PDO_DBLIB one more time to implement native parameter
>> binding for stored procedures, what are the thoughts on returning the
>> column values from the database as the native PHP type when possible?
>> Currently everything is returned as a string, incurring overhead for
>> conversion
>
> The design philosophy was to pull the data out as strings as this gives the
> highest data fidelity (especially with the various numeric types) and is a
> pragmatic choice for the majority of web apps which are largely in text land
> anyway, and typically are not bottlenecked on the performance of converting
> database column values.
>
> Some drivers, particularly postgres, are unable to request string data and
> therefore return their results in the type that most closely matches the C
> datatype forced on it by the API.
>
> This has been a source of complaints from some about the consistency of the
> returned data for apps that are designed to run against multiple database
> backends.
>
> I would advise against changing the behavior of the driver if possible, and
> against changing it away from the established stringiness of PDO without
> good reason.

One reason was to bring the driver in line with the behavior of the
PDO sqlserv driver (
http://msdn.microsoft.com/en-us/library/cc296193.aspx )

Eventually I would like yo make the 2 interchangeable and have PHP/PDO
applications run the same on Win32 and Linux.

>
>> and creating problems hinting at the desired binding type
>> for BLOBS and numeric data types.

Yes, you are right. I can bind columns as strings and parameters as a
specific data type independently.

>
> Can you elaborate on this? You can explicitly set the desired binding via
> bindColumn.
>
> --Wez.
>

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to