PDA

View Full Version : [ANN] ODB C++ ORM adds support for Qt



borisk
28th April 2011, 13:08
I am pleased to announce the release of ODB 1.4.0 with support for Qt.

ODB is an open-source object-relational mapping (ORM) system for C++. It
allows you to persist C++ objects to a relational database without having
to deal with tables, columns, or SQL and without manually writing any of
the mapping code.

This release add persistence support for the following Qt components:

Basic types:
* QString
* QByteArray

Date-time types:
* QDate
* QTime
* QDateTime

Smart pointers:
* QSharedPointer
* QWeakPointer

Plus their lazy counterparts:
* QLazySharedPointer
* QLazyWeakPointer

Containers:
* QVector
* QList
* QLinkedList
* QSet
* QMap
* QMultiMap
* QHash
* QMultiHash

With this support we can now automatically persist classes like this:


#pragma db object
class Employee
{
...

QString first_name_;
QString last_name_;

QDate born_;

QSet<QString> emails_;
QByteArray publicKey_;

QSharedPointer<Employer> employer_;
};

A more detailed discussion of this and other new features can be found in
the following blog post:

http://www.codesynthesis.com/~boris/blog/2011/04/27/odb-1-4-0-released/

ODB is written in portable C++ and you should be able to use it with any
modern C++ compiler. In particular, we have tested this release on GNU/Linux
(x86/x86-64), Windows (x86/x86-64), Mac OS X, and Solaris (x86/x86-64/SPARC)
with GNU g++ 4.2.x-4.5.x, MS Visual C++ 2008 and 2010, and Sun Studio 12.
Qt support has been tested on GNU/Linux, Windows (VC++ 2008 and 2010 as well
as GCC with MinGW), and Mac OS X.

More information, documentation, source code, and pre-compiled binaries are
available from:

http://www.codesynthesis.com/products/odb/

Enjoy,
Boris