A c++-class-library for database access.
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.
In a hurry? Add it to your Download Basket!
What's New in This Release:
- Major optimization of oracle driver:
- The oracle driver got a major optimization. When reading multiple rows, previously each row was requested separately from OCI. Now multiple rows are fetched in a single OCI call and passed row by row to the application.