QxOrm 1.4.9
C++ Object Relational Mapping library
Loading...
Searching...
No Matches

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>

Inheritance diagram for qx::QxSqlDatabase:
qx::QxSingleton< QxSqlDatabase > qx::IxSingleton

Public Types

enum  ph_style { ph_style_question_mark , ph_style_2_point_name , ph_style_at_name }
 
typedef std::function< void(QSqlDatabase &)> type_fct_db_open
 

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
 
bool getTraceSqlBoundValues () const
 
bool getTraceSqlBoundValuesOnError () const
 
ph_style getSqlPlaceHolderStyle () const
 
bool getSessionThrowable () const
 
bool getSessionAutoTransaction () const
 
bool getValidatorThrowable () const
 
bool getAutoReplaceSqlAliasIntoQuery () const
 
bool getVerifyOffsetRelation () const
 
bool getAddAutoIncrementIdToUpdateQuery () const
 
bool getForceParentIdToAllChildren () const
 
type_fct_db_open getFctDatabaseOpen () const
 
bool getAddSqlSquareBracketsForTableName () const
 
bool getAddSqlSquareBracketsForColumnName () const
 
bool getFormatSqlQueryBeforeLogging () const
 
QStringList getSqlDelimiterForTableName () const
 
QStringList getSqlDelimiterForColumnName () const
 
QStringList getSqlDelimiterForTableNameAlias () const
 
QStringList getSqlDelimiterForColumnNameAlias () const
 
int getTraceSqlOnlySlowQueriesDatabase () const
 
int getTraceSqlOnlySlowQueriesTotal () const
 
bool getDisplayTimerDetails () const
 
void setDriverName (const QString &s, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setConnectOptions (const QString &s, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setDatabaseName (const QString &s, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setUserName (const QString &s, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setPassword (const QString &s, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setHostName (const QString &s, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setPort (int i, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setTraceSqlQuery (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setTraceSqlRecord (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setTraceSqlBoundValues (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setTraceSqlBoundValuesOnError (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setSqlPlaceHolderStyle (ph_style e, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setSessionThrowable (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setSessionAutoTransaction (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setValidatorThrowable (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setSqlGenerator (qx::dao::detail::IxSqlGenerator_ptr p, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setAutoReplaceSqlAliasIntoQuery (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setVerifyOffsetRelation (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setAddAutoIncrementIdToUpdateQuery (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setForceParentIdToAllChildren (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setFctDatabaseOpen (type_fct_db_open fct, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setAddSqlSquareBracketsForTableName (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setAddSqlSquareBracketsForColumnName (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setFormatSqlQueryBeforeLogging (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setSqlDelimiterForTableName (const QStringList &lst, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setSqlDelimiterForColumnName (const QStringList &lst, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setSqlDelimiterForTableNameAlias (const QStringList &lst, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setSqlDelimiterForColumnNameAlias (const QStringList &lst, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setTraceSqlOnlySlowQueriesDatabase (int i, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setTraceSqlOnlySlowQueriesTotal (int i, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
void setDisplayTimerDetails (bool b, bool bJustForCurrentThread=false, QSqlDatabase *pJustForThisDatabase=NULL)
 
qx::dao::detail::IxSqlGeneratorgetSqlGenerator ()
 
void clearAllSettingsForCurrentThread ()
 
void clearAllSettingsForDatabase (QSqlDatabase *p)
 

Static Public Member Functions

static QSqlDatabase getDatabase ()
 
static QSqlDatabase getDatabase (QSqlError &dbError)
 
static QSqlDatabase getDatabaseCloned ()
 
static QSqlDatabase checkDatabaseByThread ()
 
static void closeAllDatabases ()
 
static void clearAllDatabases ()
 
static bool isEmpty ()
 
- Static Public Member Functions inherited from qx::QxSingleton< QxSqlDatabase >
static QxSqlDatabasegetSingleton ()
 
static void deleteSingleton ()
 

Protected Member Functions

bool setCurrentDatabaseByThread (QSqlDatabase *p)
 
void clearCurrentDatabaseByThread ()
 
- Protected Member Functions inherited from qx::QxSingleton< QxSqlDatabase >
 QxSingleton (const QString &sKey)
 
virtual ~QxSingleton ()
 
virtual void deleteInstance ()
 
- Protected Member Functions inherited from qx::IxSingleton
 IxSingleton (const QString &sKey)
 
virtual ~IxSingleton ()
 

Private Member Functions

 QxSqlDatabase ()
 
virtual ~QxSqlDatabase ()
 

Private Attributes

std::unique_ptr< QxSqlDatabaseImpl > m_pImpl
 Private implementation idiom.
 

Friends

class QxSingleton< QxSqlDatabase >
 
class qx::dao::detail::IxDao_Helper
 

Additional Inherited Members

- Static Protected Member Functions inherited from qx::QxSingleton< QxSqlDatabase >
static bool isSingletonNull ()
 
- Static Protected Member Functions inherited from qx::IxSingleton
static void initQxSingletonX ()
 
- Protected Attributes inherited from qx::IxSingleton
QString m_sKeySingleton
 Singleton key used by 'QxSingletonX' container.
 

Detailed Description

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 75 of file QxSqlDatabase.h.

Member Typedef Documentation

◆ type_fct_db_open

typedef std::function<void (QSqlDatabase &)> qx::QxSqlDatabase::type_fct_db_open

Definition at line 85 of file QxSqlDatabase.h.

Member Enumeration Documentation

◆ ph_style

Enumerator
ph_style_question_mark 
ph_style_2_point_name 
ph_style_at_name 

Definition at line 83 of file QxSqlDatabase.h.

Constructor & Destructor Documentation

◆ QxSqlDatabase()

qx::QxSqlDatabase::QxSqlDatabase ( )
private

◆ ~QxSqlDatabase()

virtual qx::QxSqlDatabase::~QxSqlDatabase ( )
privatevirtual

Member Function Documentation

◆ checkDatabaseByThread()

static QSqlDatabase qx::QxSqlDatabase::checkDatabaseByThread ( )
static

◆ clearAllDatabases()

static void qx::QxSqlDatabase::clearAllDatabases ( )
static

◆ clearAllSettingsForCurrentThread()

void qx::QxSqlDatabase::clearAllSettingsForCurrentThread ( )

◆ clearAllSettingsForDatabase()

void qx::QxSqlDatabase::clearAllSettingsForDatabase ( QSqlDatabase * p)

◆ clearCurrentDatabaseByThread()

void qx::QxSqlDatabase::clearCurrentDatabaseByThread ( )
protected

◆ closeAllDatabases()

static void qx::QxSqlDatabase::closeAllDatabases ( )
static

◆ getAddAutoIncrementIdToUpdateQuery()

bool qx::QxSqlDatabase::getAddAutoIncrementIdToUpdateQuery ( ) const

◆ getAddSqlSquareBracketsForColumnName()

bool qx::QxSqlDatabase::getAddSqlSquareBracketsForColumnName ( ) const

◆ getAddSqlSquareBracketsForTableName()

bool qx::QxSqlDatabase::getAddSqlSquareBracketsForTableName ( ) const

◆ getAutoReplaceSqlAliasIntoQuery()

bool qx::QxSqlDatabase::getAutoReplaceSqlAliasIntoQuery ( ) const

◆ getConnectOptions()

QString qx::QxSqlDatabase::getConnectOptions ( ) const

◆ getDatabase() [1/2]

static QSqlDatabase qx::QxSqlDatabase::getDatabase ( )
static

◆ getDatabase() [2/2]

static QSqlDatabase qx::QxSqlDatabase::getDatabase ( QSqlError & dbError)
static

◆ getDatabaseCloned()

static QSqlDatabase qx::QxSqlDatabase::getDatabaseCloned ( )
static

◆ getDatabaseName()

QString qx::QxSqlDatabase::getDatabaseName ( ) const

◆ getDisplayTimerDetails()

bool qx::QxSqlDatabase::getDisplayTimerDetails ( ) const

◆ getDriverName()

QString qx::QxSqlDatabase::getDriverName ( ) const

◆ getFctDatabaseOpen()

type_fct_db_open qx::QxSqlDatabase::getFctDatabaseOpen ( ) const

◆ getForceParentIdToAllChildren()

bool qx::QxSqlDatabase::getForceParentIdToAllChildren ( ) const

◆ getFormatSqlQueryBeforeLogging()

bool qx::QxSqlDatabase::getFormatSqlQueryBeforeLogging ( ) const

◆ getHostName()

QString qx::QxSqlDatabase::getHostName ( ) const

◆ getPassword()

QString qx::QxSqlDatabase::getPassword ( ) const

◆ getPort()

int qx::QxSqlDatabase::getPort ( ) const

◆ getSessionAutoTransaction()

bool qx::QxSqlDatabase::getSessionAutoTransaction ( ) const

◆ getSessionThrowable()

bool qx::QxSqlDatabase::getSessionThrowable ( ) const

◆ getSqlDelimiterForColumnName()

QStringList qx::QxSqlDatabase::getSqlDelimiterForColumnName ( ) const

◆ getSqlDelimiterForColumnNameAlias()

QStringList qx::QxSqlDatabase::getSqlDelimiterForColumnNameAlias ( ) const

◆ getSqlDelimiterForTableName()

QStringList qx::QxSqlDatabase::getSqlDelimiterForTableName ( ) const

◆ getSqlDelimiterForTableNameAlias()

QStringList qx::QxSqlDatabase::getSqlDelimiterForTableNameAlias ( ) const

◆ getSqlGenerator()

qx::dao::detail::IxSqlGenerator * qx::QxSqlDatabase::getSqlGenerator ( )

◆ getSqlPlaceHolderStyle()

ph_style qx::QxSqlDatabase::getSqlPlaceHolderStyle ( ) const

◆ getTraceSqlBoundValues()

bool qx::QxSqlDatabase::getTraceSqlBoundValues ( ) const

◆ getTraceSqlBoundValuesOnError()

bool qx::QxSqlDatabase::getTraceSqlBoundValuesOnError ( ) const

◆ getTraceSqlOnlySlowQueriesDatabase()

int qx::QxSqlDatabase::getTraceSqlOnlySlowQueriesDatabase ( ) const

◆ getTraceSqlOnlySlowQueriesTotal()

int qx::QxSqlDatabase::getTraceSqlOnlySlowQueriesTotal ( ) const

◆ getTraceSqlQuery()

bool qx::QxSqlDatabase::getTraceSqlQuery ( ) const

◆ getTraceSqlRecord()

bool qx::QxSqlDatabase::getTraceSqlRecord ( ) const

◆ getUserName()

QString qx::QxSqlDatabase::getUserName ( ) const

◆ getValidatorThrowable()

bool qx::QxSqlDatabase::getValidatorThrowable ( ) const

◆ getVerifyOffsetRelation()

bool qx::QxSqlDatabase::getVerifyOffsetRelation ( ) const

◆ isEmpty()

static bool qx::QxSqlDatabase::isEmpty ( )
static

◆ setAddAutoIncrementIdToUpdateQuery()

void qx::QxSqlDatabase::setAddAutoIncrementIdToUpdateQuery ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setAddSqlSquareBracketsForColumnName()

void qx::QxSqlDatabase::setAddSqlSquareBracketsForColumnName ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setAddSqlSquareBracketsForTableName()

void qx::QxSqlDatabase::setAddSqlSquareBracketsForTableName ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setAutoReplaceSqlAliasIntoQuery()

void qx::QxSqlDatabase::setAutoReplaceSqlAliasIntoQuery ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setConnectOptions()

void qx::QxSqlDatabase::setConnectOptions ( const QString & s,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setCurrentDatabaseByThread()

bool qx::QxSqlDatabase::setCurrentDatabaseByThread ( QSqlDatabase * p)
protected

◆ setDatabaseName()

void qx::QxSqlDatabase::setDatabaseName ( const QString & s,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setDisplayTimerDetails()

void qx::QxSqlDatabase::setDisplayTimerDetails ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setDriverName()

void qx::QxSqlDatabase::setDriverName ( const QString & s,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setFctDatabaseOpen()

void qx::QxSqlDatabase::setFctDatabaseOpen ( type_fct_db_open fct,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setForceParentIdToAllChildren()

void qx::QxSqlDatabase::setForceParentIdToAllChildren ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setFormatSqlQueryBeforeLogging()

void qx::QxSqlDatabase::setFormatSqlQueryBeforeLogging ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setHostName()

void qx::QxSqlDatabase::setHostName ( const QString & s,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setPassword()

void qx::QxSqlDatabase::setPassword ( const QString & s,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setPort()

void qx::QxSqlDatabase::setPort ( int i,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setSessionAutoTransaction()

void qx::QxSqlDatabase::setSessionAutoTransaction ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setSessionThrowable()

void qx::QxSqlDatabase::setSessionThrowable ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setSqlDelimiterForColumnName()

void qx::QxSqlDatabase::setSqlDelimiterForColumnName ( const QStringList & lst,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setSqlDelimiterForColumnNameAlias()

void qx::QxSqlDatabase::setSqlDelimiterForColumnNameAlias ( const QStringList & lst,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setSqlDelimiterForTableName()

void qx::QxSqlDatabase::setSqlDelimiterForTableName ( const QStringList & lst,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setSqlDelimiterForTableNameAlias()

void qx::QxSqlDatabase::setSqlDelimiterForTableNameAlias ( const QStringList & lst,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setSqlGenerator()

void qx::QxSqlDatabase::setSqlGenerator ( qx::dao::detail::IxSqlGenerator_ptr p,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setSqlPlaceHolderStyle()

void qx::QxSqlDatabase::setSqlPlaceHolderStyle ( ph_style e,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setTraceSqlBoundValues()

void qx::QxSqlDatabase::setTraceSqlBoundValues ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setTraceSqlBoundValuesOnError()

void qx::QxSqlDatabase::setTraceSqlBoundValuesOnError ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setTraceSqlOnlySlowQueriesDatabase()

void qx::QxSqlDatabase::setTraceSqlOnlySlowQueriesDatabase ( int i,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setTraceSqlOnlySlowQueriesTotal()

void qx::QxSqlDatabase::setTraceSqlOnlySlowQueriesTotal ( int i,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setTraceSqlQuery()

void qx::QxSqlDatabase::setTraceSqlQuery ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setTraceSqlRecord()

void qx::QxSqlDatabase::setTraceSqlRecord ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setUserName()

void qx::QxSqlDatabase::setUserName ( const QString & s,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setValidatorThrowable()

void qx::QxSqlDatabase::setValidatorThrowable ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

◆ setVerifyOffsetRelation()

void qx::QxSqlDatabase::setVerifyOffsetRelation ( bool b,
bool bJustForCurrentThread = false,
QSqlDatabase * pJustForThisDatabase = NULL )

Friends And Related Symbol Documentation

◆ qx::dao::detail::IxDao_Helper

friend class qx::dao::detail::IxDao_Helper
friend

Definition at line 79 of file QxSqlDatabase.h.

◆ QxSingleton< QxSqlDatabase >

friend class QxSingleton< QxSqlDatabase >
friend

Definition at line 75 of file QxSqlDatabase.h.

Member Data Documentation

◆ m_pImpl

std::unique_ptr<QxSqlDatabaseImpl> qx::QxSqlDatabase::m_pImpl
private

Private implementation idiom.

Definition at line 90 of file QxSqlDatabase.h.


The documentation for this class was generated from the following file: