Tntdb 0.9.0 review

Download
by rbytes.net on

Tntdb is a c++-class-library for easy access to databases

License: GPL (GNU General Public License)
File size: 479K
Developer: Tommi Makitalo
0 stars award from rbytes.net

Tntdb is a c++-class-library for easy access to databases. The interface is database-independent. Driverclasses are loaded dynamically.

The goal of it is to have easy access to databases. You don't have to worry about resourceleakage, because all objects you use directly are allocated on the stack and deleted automatically, when going out of scope. The interfaceobjects are wrappers to referencecounted instances, so you can copy them around at your own will. Resources are freed, when the last object goes out of scope.

Errorhandling is done exclusively with exceptionhandling. Just wrap your code with a single try-catch and you have full errorhandling. Exceptions are all derived from std::exception.

STL is used where possible and also STL-like and -compatible interfaces are offered, where suitable.

Tntdb is targeted for applicationprogramming. It is not suitable for generic databasetools. It does not offer e.g. schemaquery. You have to know, how your tables look like. Thats true for normal applications.

You use SQL for databaseaccess. No wrapperclasses like active resultsets or databound controls are offered. Instead you have best control over the database. You can use every SQL-trick you know to get most out of your database. Also this is a thin wrapper, so that you should have no big performancepenalty compared to direct access to the C-API.

The project started already some years ago as a postgresql-wrapper. Later I added a sqlite-3-wrapper.

The current status is, that there is a working mysql- and postgresql-driver-class. The sqlite-3-wrapper is included here, but it is just a early design-study. Tntdb works, but it is not dynamically loaded like the other drivers.

The public headers include documentation, which can be generated using Doxygen.

Also there are some small examples in the demo-directory.

Requirements:
cxxtools (at least 1.4)

What's New in This Release:
The most important change is the switch from the GPL to the LGPL.
The code itself has some minor bugfixes.
The jump in the version number indicates that Tntdb has proven to be stable in a production environment and is nearing 1.0.

Tntdb 0.9.0 keywords