![]() |
QxOrm
1.2.3
C++ Object Relational Mapping library
|
qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by thread (this class is a singleton and is thread-safe) More...
#include <QxSqlDatabase.h>
Public Types | |
enum | ph_style { ph_style_question_mark, ph_style_2_point_name, ph_style_at_name } |
Public Member Functions | |
QString | getDriverName () const |
QString | getConnectOptions () const |
QString | getDatabaseName () const |
QString | getUserName () const |
QString | getPassword () const |
QString | getHostName () const |
int | getPort () const |
bool | getTraceSqlQuery () const |
bool | getTraceSqlRecord () const |
ph_style | getSqlPlaceHolderStyle () const |
bool | getSessionThrowable () const |
bool | getSessionAutoTransaction () const |
bool | getValidatorThrowable () const |
bool | getAutoReplaceSqlAliasIntoQuery () const |
void | setDriverName (const QString &s) |
void | setConnectOptions (const QString &s) |
void | setDatabaseName (const QString &s) |
void | setUserName (const QString &s) |
void | setPassword (const QString &s) |
void | setHostName (const QString &s) |
void | setPort (int i) |
void | setTraceSqlQuery (bool b) |
void | setTraceSqlRecord (bool b) |
void | setSqlPlaceHolderStyle (ph_style e) |
void | setSessionThrowable (bool b) |
void | setSessionAutoTransaction (bool b) |
void | setValidatorThrowable (bool b) |
void | setSqlGenerator (qx::dao::detail::IxSqlGenerator_ptr p) |
void | setAutoReplaceSqlAliasIntoQuery (bool b) |
qx::dao::detail::IxSqlGenerator * | getSqlGenerator () |
Static Public Member Functions | |
static QSqlDatabase | getDatabase () |
static QSqlDatabase | getDatabaseCloned () |
Private Member Functions | |
QxSqlDatabase () | |
virtual | ~QxSqlDatabase () |
QSqlDatabase | getDatabaseByCurrThreadId () |
QSqlDatabase | createDatabase () |
void | displayLastError (const QSqlDatabase &db, const QString &sDesc) const |
QString | formatLastError (const QSqlDatabase &db) const |
bool | isValid () const |
Private Attributes | |
QHash< Qt::HANDLE, QString > | m_lstDbByThread |
Collection of databases connexions by thread id. | |
QMutex | m_oDbMutex |
Mutex => 'QxSqlDatabase' is thread-safe. | |
QString | m_sDriverName |
Driver name to connect to database. | |
QString | m_sConnectOptions |
Connect options to database. | |
QString | m_sDatabaseName |
Database name. | |
QString | m_sUserName |
Connection's user name. | |
QString | m_sPassword |
Connection's password. | |
QString | m_sHostName |
Connection's host name. | |
int | m_iPort |
Connection's port number. | |
bool | m_bTraceSqlQuery |
Trace each sql query executed. | |
bool | m_bTraceSqlRecord |
Trace each sql record. | |
ph_style | m_ePlaceHolderStyle |
Place holder style to build sql query. | |
bool | m_bSessionThrowable |
An exception of type qx::dao::sql_error is thrown when a SQL error is appended to qx::QxSession object. | |
bool | m_bSessionAutoTransaction |
A transaction is automatically beginned when a qx::QxSession object is instantiated. | |
bool | m_bValidatorThrowable |
An exception of type qx::validator_error is thrown when invalid values are detected inserting or updating an element into database. | |
qx::dao::detail::IxSqlGenerator_ptr | m_pSqlGenerator |
SQL generator to build SQL query specific for each database. | |
bool | m_bAutoReplaceSqlAliasIntoQuery |
Replace all sql alias into sql query automatically. | |
Friends | |
class | QxSingleton< QxSqlDatabase > |
qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by thread (this class is a singleton and is thread-safe)
Definition at line 65 of file QxSqlDatabase.h.
Definition at line 72 of file QxSqlDatabase.h.
qx::QxSqlDatabase::QxSqlDatabase | ( | ) | [inline, private] |
Definition at line 96 of file QxSqlDatabase.h.
virtual qx::QxSqlDatabase::~QxSqlDatabase | ( | ) | [inline, private, virtual] |
Definition at line 97 of file QxSqlDatabase.h.
QSqlDatabase qx::QxSqlDatabase::createDatabase | ( | ) | [private] |
void qx::QxSqlDatabase::displayLastError | ( | const QSqlDatabase & | db, |
const QString & | sDesc | ||
) | const [private] |
QString qx::QxSqlDatabase::formatLastError | ( | const QSqlDatabase & | db | ) | const [private] |
bool qx::QxSqlDatabase::getAutoReplaceSqlAliasIntoQuery | ( | ) | const [inline] |
Definition at line 114 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::getConnectOptions | ( | ) | const [inline] |
Definition at line 102 of file QxSqlDatabase.h.
static QSqlDatabase qx::QxSqlDatabase::getDatabase | ( | ) | [inline, static] |
Definition at line 132 of file QxSqlDatabase.h.
QSqlDatabase qx::QxSqlDatabase::getDatabaseByCurrThreadId | ( | ) | [private] |
static QSqlDatabase qx::QxSqlDatabase::getDatabaseCloned | ( | ) | [inline, static] |
Definition at line 133 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::getDatabaseName | ( | ) | const [inline] |
Definition at line 103 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::getDriverName | ( | ) | const [inline] |
Definition at line 101 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::getHostName | ( | ) | const [inline] |
Definition at line 106 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::getPassword | ( | ) | const [inline] |
Definition at line 105 of file QxSqlDatabase.h.
int qx::QxSqlDatabase::getPort | ( | ) | const [inline] |
Definition at line 107 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::getSessionAutoTransaction | ( | ) | const [inline] |
Definition at line 112 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::getSessionThrowable | ( | ) | const [inline] |
Definition at line 111 of file QxSqlDatabase.h.
qx::dao::detail::IxSqlGenerator* qx::QxSqlDatabase::getSqlGenerator | ( | ) |
ph_style qx::QxSqlDatabase::getSqlPlaceHolderStyle | ( | ) | const [inline] |
Definition at line 110 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::getTraceSqlQuery | ( | ) | const [inline] |
Definition at line 108 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::getTraceSqlRecord | ( | ) | const [inline] |
Definition at line 109 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::getUserName | ( | ) | const [inline] |
Definition at line 104 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::getValidatorThrowable | ( | ) | const [inline] |
Definition at line 113 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::isValid | ( | ) | const [inline, private] |
Definition at line 145 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setAutoReplaceSqlAliasIntoQuery | ( | bool | b | ) | [inline] |
Definition at line 130 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setConnectOptions | ( | const QString & | s | ) | [inline] |
Definition at line 117 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setDatabaseName | ( | const QString & | s | ) | [inline] |
Definition at line 118 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setDriverName | ( | const QString & | s | ) | [inline] |
Definition at line 116 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setHostName | ( | const QString & | s | ) | [inline] |
Definition at line 121 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setPassword | ( | const QString & | s | ) | [inline] |
Definition at line 120 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setPort | ( | int | i | ) | [inline] |
Definition at line 122 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setSessionAutoTransaction | ( | bool | b | ) | [inline] |
Definition at line 127 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setSessionThrowable | ( | bool | b | ) | [inline] |
Definition at line 126 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setSqlGenerator | ( | qx::dao::detail::IxSqlGenerator_ptr | p | ) | [inline] |
Definition at line 129 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setSqlPlaceHolderStyle | ( | ph_style | e | ) | [inline] |
Definition at line 125 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setTraceSqlQuery | ( | bool | b | ) | [inline] |
Definition at line 123 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setTraceSqlRecord | ( | bool | b | ) | [inline] |
Definition at line 124 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setUserName | ( | const QString & | s | ) | [inline] |
Definition at line 119 of file QxSqlDatabase.h.
void qx::QxSqlDatabase::setValidatorThrowable | ( | bool | b | ) | [inline] |
Definition at line 128 of file QxSqlDatabase.h.
friend class QxSingleton< QxSqlDatabase > [friend] |
Definition at line 68 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::m_bAutoReplaceSqlAliasIntoQuery [private] |
Replace all sql alias into sql query automatically.
Definition at line 92 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::m_bSessionAutoTransaction [private] |
A transaction is automatically beginned when a qx::QxSession object is instantiated.
Definition at line 89 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::m_bSessionThrowable [private] |
An exception of type qx::dao::sql_error is thrown when a SQL error is appended to qx::QxSession object.
Definition at line 88 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::m_bTraceSqlQuery [private] |
Trace each sql query executed.
Definition at line 85 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::m_bTraceSqlRecord [private] |
Trace each sql record.
Definition at line 86 of file QxSqlDatabase.h.
bool qx::QxSqlDatabase::m_bValidatorThrowable [private] |
An exception of type qx::validator_error is thrown when invalid values are detected inserting or updating an element into database.
Definition at line 90 of file QxSqlDatabase.h.
Place holder style to build sql query.
Definition at line 87 of file QxSqlDatabase.h.
int qx::QxSqlDatabase::m_iPort [private] |
Connection's port number.
Definition at line 84 of file QxSqlDatabase.h.
QHash<Qt::HANDLE, QString> qx::QxSqlDatabase::m_lstDbByThread [private] |
Collection of databases connexions by thread id.
Definition at line 76 of file QxSqlDatabase.h.
QMutex qx::QxSqlDatabase::m_oDbMutex [private] |
Mutex => 'QxSqlDatabase' is thread-safe.
Definition at line 77 of file QxSqlDatabase.h.
SQL generator to build SQL query specific for each database.
Definition at line 91 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::m_sConnectOptions [private] |
Connect options to database.
Definition at line 79 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::m_sDatabaseName [private] |
Database name.
Definition at line 80 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::m_sDriverName [private] |
Driver name to connect to database.
Definition at line 78 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::m_sHostName [private] |
Connection's host name.
Definition at line 83 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::m_sPassword [private] |
Connection's password.
Definition at line 82 of file QxSqlDatabase.h.
QString qx::QxSqlDatabase::m_sUserName [private] |
Connection's user name.
Definition at line 81 of file QxSqlDatabase.h.