Can Poco::Data Speak C++ as a Native?

Wouldn’t every true C++ programmer talking to a database be happy to be able to do something like this:

RecordSet rset(session, "SELECT * FROM Vectors");
for (RecordSet::Iterator it = rset.begin(); it != rset.end(); ++it)
std::cout << *it;

Or this:

std::copy(rset.begin(), rset.end(), std::ostream_iterator<Row>(std::cout));

No doubt.
Well, if you’re a C++ aficionado and have a need to retrieve some data from a database, your dream has come true – you can do exactly the above with Poco::Data. You can retrieve your data into a STL-compliant row iterator.

I know, I know, OTL, DTL, SOCI, they all have it, in one form or the other. There are gazillions of data access libraries in all the languages. But we are Poco crowd and we love what we do and we like to think that we do it better. In some way, at least.

At this point, I’d like to express gratitude to Peter Schojer, who has put forth the very first effort for Data and SQLite libraries and also to Maciej Sobczak and other authors of SOCI, after which Data was initially modeled.

With this post, I am concluding several weeks of Data development for the upcoming 1.4 release. Unfortunately, I did not make it to the Unicode in this effort. I do plan to address that alongside with bulk operations and multiple recordsets as soon as possible.

But more than anything else at this time, I plan to spend a couple of weeks on the beautiful Croatian coast – America has been very good to me and I love it as my own, but when the rubber meets the road, there’s no place like home 😉

Take care everyone. AppInf folks, see you in St. Jakob in a while.

Update: Ah, I never get it right the first time around. Guenter, I am really thankful to you in the first place for hearing my request for Data library about a year ago.