
I know the review hasn't even been requested yet but here are some interface suggestions. 1) Session constructor that takes a std::map<basic_string<>, basic_string<>> as the second parameter instead of "service=orcl user=scott password=tiger". 2) With respect to the first request, standard names for username, password and ... that gets mapped automatically into database specific parameter names. You are already doing something similar for parameterized queries. 3) CLOB ie. Ntext that automatically gets extracted as a string field. 4) CLOB class to complement your Blob class 5) A STL compatiple stream interface to your Blob. Boost could help out here. 6) Official support for the wstring type 7) A place to register data providers and to choose one programmatically so that ones code can be configured to use a different database without recompiling. -----Original Message----- From: boost-bounces@lists.boost.org [mailto:boost-bounces@lists.boost.org] On Behalf Of Maciej Sobczak Sent: Tuesday, December 05, 2006 4:24 AM To: boost@lists.boost.org Subject: [boost] SOCI 2.2.0 - The C++ Database Access Library Hi, It's already a matter of "tradition" that all database discussions here have something to do with SOCI. ;-) To confirm this "tradition", I would like to announce that the new version (2.2.0) of the SOCI library is available for download: http://soci.sourceforge.net/ This new version provides: 1. Two new backends: - ODBC (tested with MS SQL Server) - Firebird 2. Complete build system for both Unix/Linux (autotools) and Windows (solution files for MSVC++). 3. STL-compatible iterators: Rowset<string> rs = (sql.prepare << "select name from persons"); copy(rs.begin(), rs.end(), ostream_iterator<string>(cout, "\n")); 4. Stream-like interface for easier dynamic binding and field extraction from rows: Row r; sql << "select name, age, salary from persons where ...", into(r); string name; int age, salary; r >> name >> age >> salary; 5. The comprehensive set of common tests for all supported database servers. 6. Some performance improvements for PostgreSQL. 7. Better docs. 8. Various fixes and tweaks. I would like to stress that the ODBC support was our important milestone that now allows us to claim a quite extensive coverage of existing database technologies. With this in mind, SOCI becomes even more serious and our roadmap for the nearest future is to bring the library to the state that will make it a valid candidate for inclusion into Boost. We will therefore welcome your guidance and suggestions w.r.t. Boost compliance. Note that up to this release, the library was deliberately developed without any external dependencies, so there are obviously wide areas where Boost might be applied within the library itself (example: intrusive pointers to manage some refcounted objects). This is easy. The more difficult part is the library interface and its general philosophy. We welcome your feedback. -- Maciej Sobczak : http://www.msobczak.com/ Programming : http://www.msobczak.com/prog/ _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost