SmartDB Development Framework
SmartDB Development Framework is an application programmer’s interface to PostgreSQL written in C++ (just SmartDB for short). SmartDB is designed as a set of object-oriented layers that allow client programs to pass queries to the PostgreSQL backend server and receive the results of these queries. As an underlying low-level layer for PostgreSQL communication SmartDB uses libpqtypes and libpq as result it offers a new way of handling parameterized queries and getting result values, using a predefined getters/ setters style interface. Apart from all above SmartDB is ORM tool (like Hibernate or Spring for Java or Active Record for Ruby/Python) which makes it possible to express relationships between tables in DB and C++ objects without much effort.
If you are writing software in C++ that needs to access databases managed by PostgreSQL and you’re looking for the enterprise-strength open-source database software—then SmartDB is the library of your choice.
Why use SmartDB?
- Full support of all built-in Postgres data types(ARRAY, LOB, VARRAYNG etc);
- The architecture is modeled after MPL which in turn is modeled after STL;
- Most of the things are doing at compile time which significantly speed up a runtime;
- Full SQL;
- C++ mapping of DB exceptions;
- Advanced logging mechanism;
- Comprehensive API (ability to JOIN, SORT record sets on a client machine);
- Predefined getters and setters on containers with user data;
- Every command or query issues a result object, which is really a smart pointer so it can be copied around without incurring much cost in terms of performance;
- Comprehended user guide and extensive unit-test coverage;
Why use C++ Object Oriented Framework instead of standard C libraries?
What C++ project brings you is:
- Effective use of templates to reduce the inconvenience of dealing with type; Conversions of standard C++ strings to keep you from having to worry about buffer allocation and overflow attacks;
- Object-oriented exceptions to take the tedious error-prone troubleshooting around error handling out of your hands;
- Strong management of constructors and destructors to bring resource management under control;
- All object-orientation possibilities to give you some extra reliability features that would be hard to get with plain C code;
Using SmartDB Framework
Documents and files are available for free.
Download zip archive
back