| QxOrm 1.2.7 C++ Object Relational Mapping library

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Directories

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Protected Attributes | Static Protected Attributes | Private Types | Private Member Functions
qx::QxSqlQueryBuilder< T > Class Template Reference
QxDao : QxOrm library database communication used by persistence engine (ORM - Object Relational Mapping)

qx::QxSqlQueryBuilder<T> : concrete SQL query builder for the class T with a cache mechanism to backup and restore queries already builded by the program More...

`#include <QxSqlQueryBuilder.h>`

Inheritance diagram for qx::QxSqlQueryBuilder< T >:

List of all members.

## Public Types
typedef qx::QxSqlQueryBuilder < T >::type_sql_tmp_2 | type_sql
## Public Member Functions
| QxSqlQueryBuilder ()
| QxSqlQueryBuilder (const QString &sql)
virtual | ~QxSqlQueryBuilder ()
virtual IxDataMemberX * | getDataMemberX () const
virtual IxSqlQueryBuilder & | count ()
virtual IxSqlQueryBuilder & | exist ()
virtual IxSqlQueryBuilder & | fetchAll ()
virtual IxSqlQueryBuilder & | fetchById ()
virtual IxSqlQueryBuilder & | insert ()
virtual IxSqlQueryBuilder & | update ()
virtual IxSqlQueryBuilder & | deleteAll ()
virtual IxSqlQueryBuilder & | softDeleteAll ()
virtual IxSqlQueryBuilder & | deleteById ()
virtual IxSqlQueryBuilder & | softDeleteById ()
virtual IxSqlQueryBuilder & | createTable ()
virtual IxSqlQueryBuilder & | fetchAll_WithRelation (QxSqlRelationLinked *pRelationX)
virtual IxSqlQueryBuilder & | fetchById_WithRelation (QxSqlRelationLinked *pRelationX)
virtual IxSqlQueryBuilder & | fetchAll (const QStringList &columns)
virtual IxSqlQueryBuilder & | fetchById (const QStringList &columns)
virtual IxSqlQueryBuilder & | update (const QStringList &columns)
virtual void | init ()
## Protected Attributes
QxDataMemberX< type_sql > * | m_pDataMemberX
| 'QxDataMemberX' singleton
## Static Protected Attributes
static QxCollection< QString, IxDataMember * > | m_lstDataMember
| Collection of 'IxDataMember' to build SQL query.
static IxSqlRelationX | m_lstSqlRelation
| Collection of 'IxSqlRelation' to build SQL query.
static QMutex | m_oMutex
| Mutex => 'QxSqlQueryBuilder' is thread-safe.
## Private Types
typedef qx::trait::remove_attr < T >::type | type_sql_tmp_1
typedef qx::trait::remove_smart_ptr < type_sql_tmp_1 >::type | type_sql_tmp_2
## Private Member Functions
IxDataMember * | isValid_DataMember (long lIndex) const
IxDataMember * | isValid_SqlRelation (long lIndex) const
bool | verifyColumns (const QStringList &columns) const

## Detailed Description

### template<class T>
class qx::QxSqlQueryBuilder< T >

qx::QxSqlQueryBuilder<T> : concrete SQL query builder for the class T with a cache mechanism to backup and restore queries already builded by the program

Definition at line 78 of file QxSqlQueryBuilder.h.

## Member Typedef Documentation

template<class T>

typedef qx::QxSqlQueryBuilder<T>::type_sql_tmp_2 qx::QxSqlQueryBuilder< T >::type_sql

Definition at line 88 of file QxSqlQueryBuilder.h.

template<class T>

typedef qx::trait::remove_attr<T>::type qx::QxSqlQueryBuilder< T >::type_sql_tmp_1`[private]`

Definition at line 83 of file QxSqlQueryBuilder.h.

template<class T>

typedef qx::trait::remove_smart_ptr<type_sql_tmp_1>::type qx::QxSqlQueryBuilder< T >::type_sql_tmp_2`[private]`

Definition at line 84 of file QxSqlQueryBuilder.h.

## Constructor & Destructor Documentation

template<class T>

qx::QxSqlQueryBuilder< T >::QxSqlQueryBuilder | ( |  | ) | `[inline]`

Definition at line 100 of file QxSqlQueryBuilder.h.

template<class T>

qx::QxSqlQueryBuilder< T >::QxSqlQueryBuilder | ( | const QString & | sql | ) | `[inline]`

Definition at line 101 of file QxSqlQueryBuilder.h.

template<class T>

virtual qx::QxSqlQueryBuilder< T >::~QxSqlQueryBuilder | ( |  | ) | `[inline, virtual]`

Definition at line 102 of file QxSqlQueryBuilder.h.

## Member Function Documentation

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::count | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 106 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::createTable | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 194 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::deleteAll | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 158 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::deleteById | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 175 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::exist | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 115 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchAll | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 124 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchAll | ( | const QStringList & | columns | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 223 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchAll_WithRelation | ( | QxSqlRelationLinked * | pRelationX | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 202 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchById | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 132 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchById | ( | const QStringList & | columns | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 234 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchById_WithRelation | ( | QxSqlRelationLinked * | pRelationX | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 212 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxDataMemberX* qx::QxSqlQueryBuilder< T >::getDataMemberX | ( |  | ) | const`[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 104 of file QxSqlQueryBuilder.h.

template<class T>

virtual void qx::QxSqlQueryBuilder< T >::init | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 258 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::insert | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 141 of file QxSqlQueryBuilder.h.

template<class T>

IxDataMember* qx::QxSqlQueryBuilder< T >::isValid_DataMember | ( | long | lIndex | ) | const`[inline, private]`

Definition at line 275 of file QxSqlQueryBuilder.h.

template<class T>

IxDataMember* qx::QxSqlQueryBuilder< T >::isValid_SqlRelation | ( | long | lIndex | ) | const`[inline, private]`

Definition at line 283 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::softDeleteAll | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 166 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::softDeleteById | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 184 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::update | ( |  | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 149 of file QxSqlQueryBuilder.h.

template<class T>

virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::update | ( | const QStringList & | columns | ) | `[inline, virtual]`

Implements qx::IxSqlQueryBuilder.

Definition at line 246 of file QxSqlQueryBuilder.h.

template<class T>

bool qx::QxSqlQueryBuilder< T >::verifyColumns | ( | const QStringList & | columns | ) | const`[inline, private]`

Definition at line 294 of file QxSqlQueryBuilder.h.

## Member Data Documentation

template<class T>

QxCollection< QString, IxDataMember * > qx::QxSqlQueryBuilder< T >::m_lstDataMember`[static, protected]`

Collection of 'IxDataMember' to build SQL query.

Definition at line 94 of file QxSqlQueryBuilder.h.

template<class T>

IxSqlRelationX qx::QxSqlQueryBuilder< T >::m_lstSqlRelation`[static, protected]`

Collection of 'IxSqlRelation' to build SQL query.

Definition at line 95 of file QxSqlQueryBuilder.h.

template<class T>

QMutex qx::QxSqlQueryBuilder< T >::m_oMutex`[static, protected]`

Mutex => 'QxSqlQueryBuilder' is thread-safe.

Definition at line 96 of file QxSqlQueryBuilder.h.

template<class T>

QxDataMemberX<type_sql>* qx::QxSqlQueryBuilder< T >::m_pDataMemberX`[protected]`

'QxDataMemberX' singleton

Definition at line 92 of file QxSqlQueryBuilder.h.

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

- D:/Dvlp/_Perso/QxOrm/include/QxDao/QxSqlQueryBuilder.h