Re: [PHPOpenChat-Users] "database independant" is a crock
Brought to you by:
letreo
From: Michael O. <mi...@or...> - 2005-03-16 11:58:39
|
Justin Clift wrote: > Michael Oertel wrote: > > Justin Clift wrote: > <snip> > >> If you wanted people to assist in _making it database independant_ > >> that should have been said, not outright lies. > >> > >> Very pissed off. > > > > Ooops, sorry, I know about an installation using oracle, the worst case > > so to say, but it's working fine. So, I'll add (but developed using > > MySQL, be warned :) > > > > If there any help you can offer, our ears are open. > > Sure. I _strongly_ suggest amending the website to mention "known good" > databases that work out of the box, and also mention what it will take > to get others working. > > For example, would you call this good "database independant" code? > > *********** > > 'SELECT c.NAME AS NAME, > c.INVITED AS INVITED, > c.TYPE AS TYPE, > COUNT(c.NAME) AS COUNT > FROM '.DATABASE_TABLE_PREFIX.'user_data d, > '.DATABASE_TABLE_PREFIX.'channels c > WHERE ONLINE = \'1\' > AND LAST_CHANNEL = c.NAME > GROUP BY c.NAME > ORDER BY ORDER_IDX' > > *********** *hmm* not really. I know, MySQL is far away from ANSI SQL 92 standards, and unfortunetally MySQL doesn't support some JOIN syntax. Any way, a better SQL should be using a NATURAL JOIN. 'SELECT c.NAME AS NAME, c.INVITED AS INVITED, c.TYPE AS TYPE, COUNT(c.NAME) AS COUNT FROM '.DATABASE_TABLE_PREFIX.'user_data d JOIN '.DATABASE_TABLE_PREFIX.'channels c ON(d.LAST_CHANNEL=c.NAME) WHERE ONLINE = \'1\' GROUP BY c.NAME ORDER BY ORDER_IDX' to speed-up da thingy, play around with: - explain, - create unique index idx_usr_last_channel on user_data using btree(LAST_CHANNEL); dont forget to 'analyse' it.... <snip> > So, several hours later, it's damn clear that PHP Open Chat needs a lot > of work to _become_ database independant. No thanks for just costing me > about 1/2 grand in un-billable wasted time. Just for you to know, all the time programming OSS is un-billable. So don't be soooo sad, Justin, keep in mind nobody makes mistakes willfully and you are not alone. > You expect I want to help you guys now? After blatently lying about > capabilities? Geez! By the way 'blatantly', you see... ;) > Like hell. I see, I see. cheers and greetings from germany, -michael -- Michael Oertel ICQ: 8057112 Maintainer of the PHPOpenChat-Project http://phpopenchat.org/ Co-Founder of SchulWeb http://www.schulweb.de/ MD5 Fingerprint: F6:6B:D3:E5:98:B8:97:20:30:12:DD:F2:9B:9F:8D:1B |