Re: [PDO] wiki clean up and potential in person meeting

[email protected] (Lester Caine) Tue, 29 Dec 2009 18:26:17 +0000
Newsgroups php.pdo
Message-ID <[email protected]>
Wez Furlong wrote:
> 
> On Dec 29, 2009, at 7:05 AM, Lester Caine wrote:
> 
>> Matteo Beccati wrote:
>>>> Without a GROUP of people who are interested in developing PDO, I am of
>>>> the opinion that it should actually be pulled back out of the core 
>>>> since
>>>> the generic drivers ARE being developed further, but some projects ARE
>>>> also converting to PDO in the believe that it already provides a cross
>>>> database compatibility which is not really the case?
>>> I respectfully disagree: you're just biased because you are 
>>> frustrated by the status of PDO_Firebird. Other drivers (SQLite, 
>>> MySQL, PgSQL, OCI, DB2 maybe?) work pretty well and apart from some 
>>> issues (e.g. CLOBs support in PDO_OCI) I still think that PDO should 
>>> be core. It's PDO_Firebird that should be pulled out until someone 
>>> can really start taking care of it.
>>
>> Along with OCI and DB2? and what about MSSQL. The CLOB problem is 
>> fundamental to all of these databases .... if there was a way to get 
>> around it, then I might be able to get somewhat further on using 
>> pdo_firebird.
>>
>> The oracle drive is currently suffering from the same problems as 
>> firebird, and it's apparently a generic problem with the way PDO has 
>> be straight jacketed to provide an unrealistically limited set of 
>> facilities.
> 
> I've been educating folks about PDO for quite some time, and part of my 
> presentation is asking people which databases they are using.  You need 
> to face the fact that no one (that I have spoken to) at numerous 
> locations in the USA and in Europe uses firebird, and that it is rare 
> for those folks to have even heard of it.
> 
> The firebird driver needs a maintainer, but given that open source 
> development is primarily itch-driven, and given that "no one" uses 
> firebird (except you, it seems), it seems unlikely to me that it is 
> going to progress any further.
> 
> I think it is time to quit belly-aching about the state of that driver; 
> either step up and do something about it by working with the community, 
> or let it go.
> 
> Regarding CLOBs and BLOBs, it is actually a pretty trivial change to 
> enable support for those as distinct entities, but no one has yet 
> scratched the itch and made it happen.
> 
> PDO is not straight jacketed as you suggest; you have always had an 
> extremely polarized view based on the sorry state of the firebird driver.
> 
>> As far as I can see, ONLY sqlite, mysql and postgresql drivers 
>> actually work to a level that they can be used transparently ( with 
>> some fairly major restrictions on the SQL ).
> 
> This was never a design goal for PDO.  Data _access_ abstraction not 
> _database_ abstraction.  While some adjustments can be made to make the 
> latter easier, it is an extremely challenging proposition, and I believe 
> it is a mistake to make that the driving goal at the cost of exposing 
> driver specific features.

Wez - the current discussion is about what NEEDS DOING ... and it is the DATA 
abstraction that is not consistent - which is why applications that have been 
converted to PDO are now hitting the brick wall since most 'conversions' are 
only MySQL compliant. Adding posgresql is not difficult, but is a lot of 
additional hand coding, duplicating large blocks of code that work with 
Postgresql rather than MySQL. THEN switching to include Oracle and the others 
falls over because the data is not simply matched, such as where CLOB replaces 
TEXT fields. The main question that was asked is if PDO can replace the generic 
drivers. Currently the answer is no, and so that fact should be made clear. PDO 
is NOT providing even data abstraction. Simply a crude set of compatible 
functions that can't CURRENTLY be combined with the more advanced transaction 
and other features of the generic drivers.

I have been asking for HELP to address the CLOB problem and solve the problem 
across all drivers, but without any replies ..... I WOULD like to help with PDO, 
but in the absence of any progress at all I can't see anything to gain from 
doing so? In the meantime, I will continue to support Oracle and Firebird via 
ADOdb 'reconversions'. At least that works out of the box ..... we have several 
projects each writing their own 'compatibility' layer on top of PDO - which is 
rather a waste of resources! Especially when it only results in compatibility 
with a couple of databases.

-- 
Lester Caine - G8HFL
-----------------------------
Contact - http://lsces.co.uk/wiki/?page=contact
L.S.Caine Electronic Services - http://lsces.co.uk
EnquirySolve - http://enquirysolve.com/
Model Engineers Digital Workshop - http://medw.co.uk//
Firebird - http://www.firebirdsql.org/index.php