The Database Access Library for C++

PRESENTING THE DATABASE ACCESS LIBRARY


Who should use the Database Access Library?

The Database Access Library is designed to support developers of client/server applications. Especially targetted to developers that want to build shrink wrapped applications that have to support different relational databases.


Why should you use the Database Access Library?

The Database Access Library bridges the gab between databases and your application. It delivers your persistent business objects ready to use, fully packed with all features you may expect in professional database applications, and more. This will not only lead to better quality in the end result. It will also dramatically increase the productivity of the developers.

The Database Access Library is designed for ease of use. With this library developers can focus on the business domain instead of the technical details involved in connecting to a database.

Using the Database Access Library will naturally lead to well designed applications. The Library prescribes the use of the wel established Model-View-Controler design pattern. And makes a three layer-architecture where database functionality, business logic and presentation are seperated. This will lead to applications of better quality, that are easier to maintain.

You may wonder how this compares to other products that offer general database access like Microsofts ADO/OleDB or Rogue Wave DBTools.h++ These tools only offer you a database independent interface. Palisands Database Access Library offers you much more than that...

Objects in the database instead of tables in your application

The common database connection tools offer a general interface to the database tables found in relational databases. You typically will find tables, columns and rows that you can read from and commands to execute in your database. To build these commands you often have to use SQL statements to specify your database functionality. And since different databases use different dialects of SQL, before you know it you are locked into one specific database.

The Database Access Library uses a different approach. It focuses on the business objects you want to implement and how these objects should become persistent. No more stuffing your round objects into square tables and losing out on valuable object-oriented principles like inheritance and encapsulation.

Nowadays every professional development team uses object-oriented analysis and design methods. But when the data should be stored in a relational database the features that make object-orientation such a powerful aid in building applications are lost in your model because the database does not support them. The Database Access Library fully supports the object-oriented model and makes a complete transparent transformation of your business objects to relational database tables. Where the database leaves off, the Database Access Library will take over.

The design of the Database Access Library started with an analysis of the features that persistent business objects should support in a professional environment and looks how every individual database can support these the best. This resulted in a completely database independent application programming interface, while utilizing every available feature of the underlying database to optimize the access to it. For instance DAL drivers will use stored procedures to optimize performance where possible.


What makes a database application professional?

When building a database application many developers are satisfied when the data is stored in tables and on the first glance this indeed makes it work. But when you set your standards at a professional level you expect more.

A Unique Object Identity

Science has already long established that objects should have a guaranteed unique identity independent of attribute values. Relational databases in general do not naturally support this. The Database Access Library however generates a database wide unique identifier for each object that is created and this identifier will not be changed during its lifetime.

Guaranteed Referential Integrity

You expect that the referential integrity of you data is guaranteed. Normally this means writing triggers or stored procedures for all your associations. With the Database Access Library this comes with the package. Just tell it whether you want cascading or restricted deletes and DAL does the rest.

Multiuser safe

Many database applications do not take measures to ensure that one user can not write over the changes of another. This can even lead to corrupt data. The Database Access Library supports the optimistic locking strategy to avoid this. When necessary individual objects can be explicitely locked to gain exclusive access.

Performance

How many times does it happen that an application is finished but you discover that it does not perform the way you want it. The Database Access Library is optimized for performance by using the best performing features of the database even when they are not standards compliant. But the highest performance gains are achieved by utilizing a client side object cache. All performance features are build transparently built into the library. Just use it and experience the performance.


Interested?

The Database Access Library will save you time and increase the quality and maintainability of your applications. Are you interested? Go to the
download section of this site to download the demo version of the Database Access Library. Visit the
register -page to get unlimited access to all supported databases.