Topic: ADOdb

Has there been any thought of using the ADOdb Database Abstraction Library to cover the use of more database types? Plus, in my opinion, it's slightly easier to use instead of the multitude of commands one needs to know using MySQL and PostgreSQL.

And for those that don't know what I'm talking about, a quote from the ADOdb site(adodb.sourceforge.net):
"ADOdb is a database abstraction library for PHP. There is also a Python version; see the ADOdb for Python docs.

The PHP version currently supports an amazing number of databases, thanks to the wonderful ADOdb community: MySQL, PostgreSQL, Interbase, Firebird, Informix, Oracle, MS SQL, Foxpro, Access, ADO, Sybase, FrontBase, DB2, SAP DB, SQLite, Netezza, LDAP, and generic ODBC, ODBTP. The Sybase, Informix, FrontBase and PostgreSQL, Netezza, LDAP, ODBTP drivers are community contributions. Here is the complete list of drivers.

Many popular web applications such as ACID, PostNuke, Xaraya, phpWiki, Mambo, PHP GACL, TikiWiki, eGroupWare and phpLens App Server are using ADOdb as their database abstraction layer. Some reasons why ADOdb is popular include:

    * Designed for speed. It is probably the fastest open source database abstraction library available for PHP. See benchmarks.
    * Provides extensive portability support such as date and type-handling and portable schema creation. See portable sql tips
    * Support many enterprise features such as database backed sessions (with session expiry notification), SQL code generation, pivot tables, SELECT LIMIT emulation for all databases, performance monitoring.
    * Easy to learn, especially if you have Window's programming experience, as it uses many ADO conventions.
    * Extensive QA, every release is unit-tested on Access, MySQL, PostgreSQL, MS SQL, Oracle 9.
    * Mature, continiously developed since August 2000. Has a large community of users.
    * Very reasonable licensing terms (BSD). This means that you can incorporate (and even compile) it into your software applications royalty-free without asking the author's permission, provided you include license.txt in your release. Also dual-licensed (Lesser GPL).
"

Web Admin of Shadows Rising RPG - A truely unique web based RPG, come check us out!

Re: ADOdb

Yes, I have thought about it. I plan to look closer at it when 1.2 is released. One thing I don't like about it, and this may sound trivial to some people, is the odd naming scheme it uses. E.g. GetRow() instead of get_row() (which pretty much the rest of PHP uses). I guess it's a result of them trying to mimic ADO, but then again, I'm not very fond of ADO either :)

"Programming is like sex: one mistake and you have to support it for the rest of your life."

Re: ADOdb

You could make a database abtraction layer wrapper encasulating ADOdb providing a naming scheme consistent with the rest of PunBB :-)

Re: ADOdb

hmm, question is would anyone want it? i mean support for other databases

Re: ADOdb

CodeDuck wrote:

You could make a database abtraction layer wrapper encasulating ADOdb providing a naming scheme consistent with the rest of PunBB :-)

Haha! An abstraction layer for the abstraction layer sounds like a great idea :)

"Programming is like sex: one mistake and you have to support it for the rest of your life."

6

Re: ADOdb

I used postnuke for a few months, the abstraction layer slowed it down from what I could see.

Most users of PunBB use MySQL, to slow it down for the few that want to use Access doesn't seem right.

See these benchmarks: http://www.english.rk.edu.pl/cms_benchmark.html

Re: ADOdb

how do you know its the abstraction layer that slows it down?

8

Re: ADOdb

Connorhd wrote:

how do you know its the abstraction layer that slows it down?

At the time I was testing it, PostNuke had recently forked away from PHPNuke.

One of the first things they did was go to an abstraction layer. I tested both on my system and PHPNuke was faster, the code hadn't been changed that much other than adding support for ADOdb.

From the benchmarks:
PHP Nuke 0,6907
Postnuke 1,2218

Re: ADOdb

ahh lol, i would have thought that it would mainly affect filesize rather than speed (but them again i dunno that much) wink

10

Re: ADOdb

The only point of me raising this issue is to open up PunBB to a wider variety of database users, myself being an avid MySQL fan.

Ok, instead of making it part of the board package, what about just support for it built into the forum or make it optional download package?

Just trying to think of ways to get more people to use the board smile

Web Admin of Shadows Rising RPG - A truely unique web based RPG, come check us out!

Re: ADOdb

Zhamel: Switching from the current database abstraction layer to ADOdb is not something you do in an afternoon :)

"Programming is like sex: one mistake and you have to support it for the rest of your life."

12 (edited by kaishaku 2005-05-20 11:43)

Re: ADOdb

So everyone knows, ADO would allow use of MSSQL and MSDE (free).
MSDE/MSSQL is a real database much faster than even precious MySQL.

The fact that PHP runs so well in *nix and MSDE requires Win32 is definitely a
huge dilemma, but I don't think it is fair to say ADO is going to slow you down.

ADO with MSDE/MSSQL is not slow. ADO with MSDE/MSSQL blows away MySQL.

Re: ADOdb

A Microsoft employee perhaps? smile

Featurewise, MSSQL is way ahead of MySQL, but definately not performance wise. If you start utilizing all the bells and whistles of MSSQL (particularly sprocs), it might be a different picture, but for straight up SELECTS, MySQL beats MSSQL any time of the day. Also, since there is no way to use SQL parameters via PHP, MSSQL has no way of storing the execution plan and performance suffers even more.

One thing I strongly dislike about ADOdb is the fact that it uses "ADO conventions". The function naming scheme and stuff like that is out of whack. If it was modelled after ADO.NET, I might have been a bit more forthcoming even though I think the disconnected nature of ADO.NET sometimes is more of a con than a pro.

"Programming is like sex: one mistake and you have to support it for the rest of your life."

Re: ADOdb

I guess I can't argue with you, but that first line is absolutely classless.

Why would I want to argue? Why would I want to help people after that?

Is your experience with MSSQL only through PHP? Have you seen industry
benchmarks? Have you written your own? I have... Oh how I wish MySQL
was near MSSQL performance-wise.

I am going to invest a bunch of time in this yet again... but every time I
do anything like this I say I won't do it again, because I am always right.

Why are anti-Microsoft reactions so very much like the reactions of racists.
If that offends you, good. Stop acting like that. Yes, I know who you are.
I don't mean to offend you, but I thought someone with your clout would
not have to resort to that bs.

MySQL most definitely does NOT beat MSSQL any time of time, even for
straight up SELECTS. Most definitely not. I will make it official if I have time.

Re: ADOdb

why is rickard's reaction anti-microsoft? if the names were reversed he could well have said "A mysql developer perhaps?", anyway i don't know much about this but...

Is your experience with MSSQL only through PHP? Have you seen industry
benchmarks? Have you written your own? I have... Oh how I wish MySQL
was near MSSQL performance-wise.

who cares if its php that is slowing down mssql? punbb uses php and thats not changing so if mysql is faster in php than mssql then mysql is the better choice, regardless of mssql actually being faster

Re: ADOdb

why is rickard's reaction anti-microsoft?

It is. You know it. Everyone knows it. I will not argue that.

It is common slander.

who cares if its php that is slowing down mssql?

I care. Others care. People who might want to use MSSQL care,
for PunBB or not. People who might want to use MySQL care,
for PunBB or not. Many people care. Many of them are smart.

Someone may want to fix it, especially someone concerned
with performance, which is the focus of my original post and
Rickard's reply. To concede PHP works slowly with MSSQL
is something entirely different than proclaiming MySQL beats
MSSQL any time of the day.

17 (edited by kaishaku 2005-05-22 20:20)

Re: ADOdb

Consider reading my initial reply carefully. Words matter.

Re: ADOdb

no i don't think rickard's reaction was in any way anti-microsoft (nothing he said had any negative connotations especially the smile at the end), and by no one cares i mean in the case of punbb not in the general scheme of things

Re: ADOdb

ADOdb is the slowest tongue acording to my tests smile

My site [PHP, Python, Linux]

20

Re: ADOdb

I want to use Microsoft Access with PunBB, is that possible wink

Re: ADOdb

Access != MSSQL/MSDE

Re: ADOdb

hcgtv's request != your request tongue

ADOdb does support access (not that i think punbb should use ADOdb, infact i would be more than happy for it to just use mysql i'm sure it would make rickard's life a whole lot simpler wink)

Re: ADOdb

kaishaku wrote:

I guess I can't argue with you, but that first line is absolutely classless.

Why would I want to argue? Why would I want to help people after that?

It was not my intention to be classless or anything of the kind. Neither was it my intention to come off as "anti-microsoft". The first line in my post was meant as a joke. I'm truly sorry if it came across as anything other than that.

kaishaku wrote:

Is your experience with MSSQL only through PHP? Have you seen industry
benchmarks? Have you written your own? I have... Oh how I wish MySQL
was near MSSQL performance-wise.

I've worked with Microsoft products (primarily .NET and MSSQL) quite a lot and I've had generally good experiences with them. I am in no way "anti-microsoft". I have worked with MSSQL through PHP, but I only do that if I have to (FreeTDS is not Unicode safe and ODBTP is just awkward).

The reason I posted my message was because I'm tired of the general opinion that MySQL is some kind of "kids database". It may have started out that way, but over the years, it has grown into a proper enterprise solution. Benchmarks? Well, I'm sure I could dig some up, but do we really want to go there? I'm afraid it could lead to a "my dad is stronger than your dad"-kind of discussion.

kaishaku wrote:

I am going to invest a bunch of time in this yet again... but every time I
do anything like this I say I won't do it again, because I am always right.

You lost me.

kaishaku wrote:

Why are anti-Microsoft reactions so very much like the reactions of racists. If that offends you, good. Stop acting like that. Yes, I know who you are. I don't mean to offend you, but I thought someone with your clout would not have to resort to that bs.

Once again, I am not anti-Microsoft. I am however, open-minded. Actually, you're the one who started accusing MySQL of being slow compared to MSSQL.

kaishaku wrote:

MySQL most definitely does NOT beat MSSQL any time of time, even for straight up SELECTS. Most definitely not. I will make it official if I have time.

Official? You mean post a link to some Microsoft sponsored benchmark?

"Programming is like sex: one mistake and you have to support it for the rest of your life."

24

Re: ADOdb

Rickard wrote:

Once again, I am not anti-Microsoft. I am however, open-minded. Actually, you're the one who started accusing MySQL of being slow compared to MSSQL.

I was there when Windows was distributed on 5 1/4 floppies. We all saw the potential and wanted to help Billy and the boys out, we thought back then that if we helped them grow, we would grow with them.

20 years later and the only software at the computer store that is not Microsoft's, is Anti-Virus and Games. They killed the software industry, their embrace and extend philosophy put a lot of good companies out of business, the same companies that helped them get a foothold in the small and medium sized business market.

I am anti-Microsoft, damn proud of it.

25 (edited by kaishaku 2005-05-23 01:11)

Re: ADOdb

Connorhd wrote:

hcgtv's request != your request tongue

ADOdb does support access (not that i think punbb should use ADOdb, infact i would be more than happy for it to just use mysql i'm sure it would make rickard's life a whole lot simpler wink)

From my perspective, he was not being serious. I read it as a joke since he
was previously sounding anti-ADO by implying ADO advocation meant slowing
down PunBB for a few users that wanted to use Access. See his old post.

That seemed entirely facetious so I want to explicitly say that ADO != MS Access.

Some people, to varying degrees throughout its short history, believed ADO
"meant" Access when in fact that was another 3 letter acronym, not ADO.

To imply ADO means using Access is either ignorance or slander.

Edit: His sarcasm is blatantly obvious, why can't you see it?