Main  /  Edit version 7  /  Edit version 8  /   /  Users Area

Difference "DbiXX Sql Library" ver. 7 versus ver. 8

Content:

The dbixx library is a C++ wrapper for [LibDBI](http://libdbi.sourceforge.net/) C library. It gives C++ friendly, exception safe interface for this library.
The dbixx library is a C++ wrapper for [LibDBI](http://libdbi.sourceforge.net/) C library. It gives a C++ friendly, exception safe interface for this library.
It is written by [Artyom Beilis (Tonkikh)](http://art-blog.no-ip.info/cppcms/blog) and licensed under LGPL v2.1.
## General
- [Quick Start Guide](/wikipp/en/page/tut_into_dbixx)
- [Installing DbiXX](/wikipp/en/page/install_dbixx)
## Classes
### Main Classes
- [dbixx::session](/wikipp/en/page/ref_dbixx_session) -- the major session object. It holds connection to the library.
- [dbixx::row](/wikipp/en/page/ref_dbixx_row) -- stores single row of output.
- [dbixx::session](/wikipp/en/page/ref_dbixx_session) -- the major session object. It holds the connection to the library.
- [dbixx::row](/wikipp/en/page/ref_dbixx_row) -- stores a single row of output.
- [dbixx::result](/wikipp/en/page/ref_dbixx_result) -- stores the output row set of queries.
- [dbixx::dbixx\_error](/wikipp/en/page/ref_dbixx_error) is thrown in case of different errors.
- [dbixx::transaction](/wikipp/en/page/ref_dbixx_trans) is the class that allows execution of exception safe transactions.
### Other Classes and Functions
- `dbixx::exec` and `dbixx::null` used for "syntactic sugar" operations.
- `dbixx::use()` is auxiliary function for easy inserting NULL values.
- `dbixx::use()` is an auxiliary function to insert NULL values easily.
## Other libraries
DbiXX was build as useful wrapper for libdbi, however it is not the only library that may provide similar functionality.
It is not connected directly for CppCMS functionality, but it was build to be useful for web development.
DbiXX was build as a useful wrapper for libdbi. However it is not the only library that provides similar functionality.
There are another libraries like [SOCI](http://soci.sourceforge.net/) that provide similar functionality. For the record, dbixx had took many ideas from SOCI.
It is not directly connected to CppCMS, but it was build to be useful for web development.
If you plan to use any library different from DbiXX I recommend you to take in account following points:
There are other libraries like [SOCI](http://soci.sourceforge.net/) that provide similar functionality. For the record, dbixx has taken many ideas from SOCI.
1. Does it provide auto-escaping? This is most important feature. It should be straightforward operation. Otherwise, you may be victim of SQL Injections.
2. Is it exception safe and provides exception safe transactions?
3. Does it support more then single database? Is this support good enough?
If you plan to use a library different from DbiXX, I recommend that you take the following into account:
In my opinion, there are very important points that should be taken in consideration.
1. Does it provide auto-escaping? This is the most important feature. It should be a straightforward operation. Otherwise, you may be victim of SQL Injections.
2. Is it exception safe and does it provides exception safe transactions?
3. Does it support more than one database engine? Is this support good enough?
The first two are mandatory for web development with CppCMS, the third one would prevent from you vendor lock-in.
These are very important points that should be taken in consideration. The first two are mandatory for web development with CppCMS, the third one would prevent from you vendor lock-in.

About

CppCMS is a web development framework for performance demanding applications.

Support This Project

SourceForge.net Logo

Поддержать проект

CppCMS needs You


Navigation

Main Page


Valid CSS | Valid XHTML 1.0