[ANN] ODB C++ ORM adds support for Qt

Boris Kolpackov boris at codesynthesis.com
Thu Apr 28 11:00:40 BST 2011


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

    * 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:


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:



More information about the kde-core-devel mailing list