It Just Works

I love things that “just work”. Ubuntu distro is supposed to be one of those things. Some time ago, I tried to install it on an old laptop and ended up with LCD panel split in three screens (I’m not kidding) and mouse popping up all over the place. Then I tried Mepis and I ended up with a crystal clear 1280×1024 resolution – something I was never able to achieve myself (who the heck has time and patience for xorg.conf), not even with Gentoo.

Ah, yes, Poco::Data:

I had one main thing in mind when I pushed for Poco::Data – I wanted to throw in a SQL and automagically get out whatever the heck I need – a HTML table, an XML document or whatever else an end user may need. After almost a year (bear in mind, this is still a hobby of mine) of development and tweaking, I finally got where I wanted to be, so we can do this now:

std::cout << RecordSet(session, "SELECT * FROM Simpsons", new HTMLTableFormatter);

and get this out:

Name Address Age
Homer Simpson Springfield 42
Marge Simpson Springfield 38
Bart Simpson Springfield 12
Lisa Simpson Springfield 10

Now, ages may be inaccurate since I made them up, but the code works. For details, see RowFormatter sample.

Unicode (shudder) support code is in, for both Windows and *NIX. It has been fully tested on Windows only, since things are quite murky on *NIX with wchar_t being (mostly) 32-bit, unixODBC Unicode being 16-bit by default (with 32-bit option), iODBC being 32-bit (only) and drivers being all over the place. I’m still trying to make sense of that mess and come up with a coherent strategy.

Comments, bug reports, opinions, flames, peanuts, … all welcome.

Alex