Boost logo

Boost :

From: Jeff Garland (jeff_at_[hidden])
Date: 2006-04-17 11:03:10


On Sun, 16 Apr 2006 19:58:03 +0000 (UTC), Steve Hutton wrote
> On 2006-04-15, Reece Dunn <msclrhd_at_[hidden]> wrote:

First a question for Reece -- didn't you put together the Boost.Database stuff
in the sandbox? It's been awhile since I looked, but is there anything there
that could be used to forward a combined proposal?

> The tuple idea is interesting. SOCI supports selecting
> into a generic Row object, which can iterated over, or
> interrogated by column name:
>
>...snip details
>
> Your suggestion of the use of a RowSet class is interesting.
> SOCI supports selecting to/from vector<int>, vector<string>, etc.
> The context in which we added support for these features was to
> support high performance bulk operations...the fetch() mechanism
> was already in place as the default way to iterate over a rowset.
>
> But we haven't yet added support for vector<Row> or vector<MyType>.
> So in these cases there's just the one way to interate over rows
> in a result set - the fetch() function.
>
> I was planning on adding support for vector<Row> and vector<MyType>,
> as a performance optimization for bulk operations.
>
> But now I can see that having these two means of iterating over
> result sets might be a little confusing to users.

Not to make this harder, but I wonder if we need to step back a level.
Perhaps an iterator interface that allows users bind the data into an stl
collection of their choice? Perhaps allows control over the number of results
to pull at a time from the database? In some cases I might want the results
in a set or list instead of the other options. As I recall DTL can do this.
I'm not precluding the need to have a rowset or some other custom type, but
the question of binding to standard collection will surely come up as an issue.

Jeff
 


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk