Tuesday, November 29, 2005

This is TOO Wicked!

Wow, this really is too cool to believe!

I'm one of the lucky three grand prize winners in the You Make MySQL 5.0 Rock! contest. I bet that sounds cheesy, but I really never imagined I would be one of those lucky three. It goes without saying I'm very very pleased indeed! Brilliant!

I just want to say: Thank You! to the MySQL team, it's a great honour. And hey, Arjen, I didn't mind sucking up at all ;-), as a matter of fact, I can't wait until the next contest.

Well, now that I'm at it, I want to speak up in favour of a couple of MySQL community personalities that I respect and think highly of. To a large extent, my motivation to occupy myself with MySQL has to do with being inspired reading their posts on various MySQL forums, their blogs and in an isolated case, their book. So, here we go:

Andrew Gilfrin

Andrew barely needs introduction: without doubt, one of the people most present on various of the MySQL forums, and of course, the man behind www.mysqldevelopment.com. But hey, this guy is so busy, isn't there anyone out there that can help out, and contribute to the site? Come take a look and help to make it even better still!

Markus Popp

The brains behind that wonderful and unique initiative, www.db4free.net, making open source database product accessible to literally everyone (with a connection and an email adress, that is). Congrats to you, dude!

Jay Pipes

Apart from being a very helpful and knowledgable MySQL forum member, Jay's also one of the Authors of Pro MySQL. I think that book's just great stuff, taking the principle perspective of MySQL as a professional database product.

Felix Geerinckx

I've seldom seen a forum member that was so accurate and quick in answering forum questions. And that's exactly what Felix does. I bet he's the modest type too, because unlike myself, you can never catch him plugging his own pages into the forum. Felix, where's your blog?

Beat Vontobel

Well, who could've missed that, a MySQL Stored Procedure debugger. Amazing! Congratulations Beat! The day will come that somebody will aggregate your blogs in a Internet Explorer friendly page ;D)

Giuseppe Maxia

Finally, someone senior enough has taken it upon himself to create some structure and organize the various MySQL general purpose routines that are scattered around. So, come on, check out the MySQL General Purpose Stored Routines Library and post your comments and contributions.

Arjen Lentz

Maybe I'm not the best judge, but it is my impression that Arjen is one of the major reasons why this community is thriving, and literally alive and kicking. For one, the PlanetMySQL initiative is really great. Just one page to see all those interesting items and blogs. This is daily digest for me

So there you have it. You may think it's corny, or you may think it's a matter of blunt, bad taste advertising...so be it. I benefit a lot from these people, and to me, it just seems the proper thing to publicly pay them tribute. Props to all of you!

Meanwhile, work has to be done too.

For one, Markus and Andrew and myself have been, and still are, quite busy writing an series of articles on connecting to MySQL from an application programming language for mysqldevelopment.com. You can expect to see those soon over there.

Second, I'm getting kinda hooked writing UDF's and delving into the associated materials. The C language (after about 8 years, it's coming all back to me), some of the MySQL source (up till now, only the headers). I took it upon me to write a library to implement most of the Oracle functions. Why? Because I might need it for a migration, and because it's fun!
I decided to make a plan to do it too, although I can't dislose too much about that right now. Let me just say I'm implementing them in alphabetical order (about to do DECODE() now), until there are no more entries on the list ;-).

Bye and greetings from one happy Roland.


Anonymous said...

Congratulations Roland, I look forward to seeing you at the User Conference!

Anonymous said...

Congratuations, Roland! You certainly deserve the recognition. You know, Felix and I barely have a chance to answer any forum questions anymore, because you "buzz in" too quickly! Congrats again! ;)

rpbouman said...

Hey, everyone, thanks for your kind comments.

Mike (Whoops! I wonder who else I forgot to mention, sorry!), I most probably will attend. I'll might take a week off, or else I might get my employer to sponsor, we'll see. I'm looking very much forward to see you too there, as well as the rest of the team.

Jay, well on some of the lists, that might be true, but I know when to speak up and when to shut up (..well...). For instance, on the performance forum, I'm just a humble observer, seeing you and Felix cracking those problems, and solving them more often than not.

Hey Beat, just teasing man. Actually, your blog shows up quite decent on IE. I mean, the important things are all there: I can read the articles, and post comments, so what more can you possibly want.

CU, and thanks again

Anonymous said...

Sorry but implementing DECODE is a waste of time, it's non standard and Oracle versions higher than 8i support the standard CASE construct.

rpbouman said...

Hi there,

> Sorry but implementing DECODE is a waste of time, it's non standard and
> Oracle versions higher than 8i support the standard CASE construct.

I know that - the point is that there might be an application that uses it, and that replacing DECODE with `DECODE` in your migration process might be a little easier than rewriting it as a CASE statement.

Of course, I agree that adherering to a standard is usually a good idea. I started using CASE too in Oracle, and I really think there's not much benefit in using DECODE anymore (although I haven't tried to see if there is some difference in performance - I suspect it would be very small or absent)

Murali.V said...


I want to know one thing, i have a database which contains few tables and few default records in that.

Sometimes unusually some developer is truncating the tables or else dropping the table without my knowlege.

How can i track these changes in my database?

Any answers will be most welcome and useful for me.

In Oracle, i heard that there are DDL and DML Triggers available but iam new to MYSQL. can anyone tell me is that any functionality available in MYSQL?

rpbouman said...


MySQL does not have DDL triggers like Oracle. But there is a very cool new development going on, MySQL Proxy.

Go get it here: http://dev.mysql.com/downloads/mysql-proxy/0.5.html

and Read all about it here:

With MySQL Proxy you should be able to intercept any query fired to MySQL, and act upon it.

That said - if you just want to prevent people chucking stuff away, just don't give them the privilege to do so. Create a separate user for each particular physical user and give them privileges accordingly.

Murali.V said...

Oh... really good one .
But i want to know how to install that to my system..

Thanks for the response

rpbouman said...


the links are right there in my comment. Read them, all the information you need to get started is there.


Nowadays, many SQL implementations offer some form of aggregate string concatenation function. Being an aggregate function, it has the effe...