Hello,

Peter Bowyer wrote:
> 
> To start with, I'm not on PHP-DEV, so if anyone wants to forward this
> across then feel free to do so.
> 
> At 07:54 PM 11/17/01 -0200, Manuel Lemos wrote:
> >- Metabase API already provides true portability to database
> >applications, so you would not need to crack your head doing what
> >Metabase already does.
> 
> Firstly, I can certainly see benefits in using Metabase - to take an
> example: in a new script I am writing I need to store a lot of dates in a
> database - Metabase would make it much easier to be cross-database
> compatible.  I believe date handling hasn't been implemented in PEAR-DB yet?

It is just not dates, but also for instance decimal types. For instance,
if you want to represent decimal values accurately, like for instance
money values, you can't use floating point fields. Not all databases
support decimal fields. For those databases, Metabase emulates decimal
fields with integers that get converted back and forth by shifting the
decimal point. You may still apply most of the arithmetic functions to
those fields.


 
> OK, let me stick my neck out :-)
> Metabase was written for PHP3, and therefore if rewritten for PHP4 w Zend
> Engine 2 would probably see some significant speed increases.  Manuel

AFAIK Metabase is not affected noticeably in performance due being able
to also run with PHP 3.


> already knows my views on the function naming, and I would really like to
> see it have an API like PEAR-DB - not a wrapper (more overhead) but truly
> rewritten, to the PEAR standards.

Shifting Metabase API to something else would meant droping support to
all the existing Metabase applications. The PEAR-DB wrapper was more to
keep the PEAR-DB API to please people that are already using PEAR-DB.


> To qualify my ideas, I must state that I have hardly any practical
> experience with Metabase and none with Zend Engine 2, but am pulling
> together other people's ideas I have come across in my trawling of the
> web.  I'm not looking to start a flame war either :-)
> 
> >- You could have a portable database API in PEAR right now using the
> >current Metabase PHP implementantion, and not in a year or whatever is
> >the time you would take to port PEAR DB to C.
> 
> Now there's an idea: why not port Metabase to C?

That is what I was proposing.

 
> >- You could already benefit from Metabase database schema management
> >support features that no other database API offers, not in PHP nor any
> >other language.
> 
> Which is the most useful feature out (even if writing it by hand would
> sometimes give a more optimal table setup)

More options could be added to the Metabase schema to hint the manager
class and database drivers to optimize table declaration for each
database. It is that I just never felt the need for that. Whoever needs
that may add what is needed, because to optimize for each database you
need to have in depth knowledge of them.


 
> >- Benefit from the toons of Metabase based programming components and
> >applications that have been developed.
> 
> I know there's binarycloud and a few classes at PHPClasses, but I've never
> come across any others.  Can you point me in the right direction please?

In the Metabase page in the PHP Classes site there is a partial list of
applications that Metabase users have been telling me. I know that there
are some big commercial applications there written with Metabase but I
was not officially notified by the developers of some of them. One that
I was told about is named NeoAssist.com is a full online help system
with a knowledge based that is meant to save the maintainers of some
sites a lot of time providing human support, since the system can
increasingly respond automatically to more and more questions that their
users have. It is quite nice. Take a look at www.NeoAssist.com .

Other than the components that were already made available in the PHP
Classes site, I have a few more that are very useful and I want to add
them there as soon as I have some time.


Regards,
Manuel Lemos

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to