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

qx::IxSqlQueryBuilder : common interface to build SQL queries to communicate with database More...

#include <IxSqlQueryBuilder.h>

Inheritance diagram for qx::IxSqlQueryBuilder:
qx::QxSqlQueryBuilder< T > qx::QxSqlQueryBuilder_Count< T > qx::QxSqlQueryBuilder_Count_WithRelation< T > qx::QxSqlQueryBuilder_CreateTable< T > qx::QxSqlQueryBuilder_DeleteAll< T > qx::QxSqlQueryBuilder_DeleteById< T > qx::QxSqlQueryBuilder_Exist< T > qx::QxSqlQueryBuilder_FetchAll< T > qx::QxSqlQueryBuilder_FetchAll_WithRelation< T > qx::QxSqlQueryBuilder_FetchById< T > qx::QxSqlQueryBuilder_FetchById_WithRelation< T > qx::QxSqlQueryBuilder_Insert< T > qx::QxSqlQueryBuilder_SoftDeleteAll< T > qx::QxSqlQueryBuilder_SoftDeleteById< T > qx::QxSqlQueryBuilder_Update< T >

Public Member Functions

 IxSqlQueryBuilder ()
 
virtual ~IxSqlQueryBuilder ()=0
 
IxDataMemberXgetDataMemberX () const
 
QxCollection< QString, IxDataMember * > * getLstDataMember () const
 
IxSqlRelationXgetLstRelation () const
 
qx::dao::detail::IxDao_HelpergetDaoHelper () const
 
void setDaoHelper (qx::dao::detail::IxDao_Helper *p)
 
void setHashRelation (const QString &s)
 
void setCartesianProduct (bool b)
 
QString getSqlQuery () const
 
QString getHashRelation () const
 
QString table () const
 
QxSoftDelete getSoftDelete () const
 
bool getCartesianProduct () const
 
long getDataCount () const
 
long getRelationCount () const
 
IxDataMembergetDataId () const
 
IxDataMembernextData (long &l) const
 
IxSqlRelationnextRelation (long &l) const
 
QString & getCurrentBuildingSql () const
 
void initIdX (long lAllRelationCount)
 
bool insertIdX (long lIndex, const QVariant &idOwner, const QVariant &idData, void *ptr)
 
void * existIdX (long lIndex, const QVariant &idOwner, const QVariant &idData)
 
void setSqlQuery (const QString &sql, const QString &key=QString())
 
void addSqlQueryAlias (const QString &sql, const QString &sqlAlias)
 
bool getAddAutoIncrementIdToUpdateQuery () const
 
void replaceSqlQueryAlias (QString &sql) const
 
virtual void init ()
 
virtual void clone (const IxSqlQueryBuilder &other)
 
virtual IxSqlQueryBuilderbuildSql (const QStringList &columns=QStringList(), QxSqlRelationLinked *pRelationX=NULL)=0
 

Static Public Member Functions

static QString addSqlCondition (const QString &sql)
 
static void sql_CreateTable (QString &sql, IxSqlQueryBuilder &builder)
 
static void sql_DeleteById (QString &sql, IxSqlQueryBuilder &builder, bool bSoftDelete)
 
static void sql_Exist (QString &sql, IxSqlQueryBuilder &builder)
 
static void sql_FetchAll (QString &sql, IxSqlQueryBuilder &builder)
 
static void sql_FetchAll (QString &sql, IxSqlQueryBuilder &builder, const QStringList &columns)
 
static void sql_FetchAll_WithRelation (qx::QxSqlRelationLinked *pRelationX, QString &sql, IxSqlQueryBuilder &builder)
 
static void sql_FetchById (QString &sql, IxSqlQueryBuilder &builder)
 
static void sql_FetchById (QString &sql, IxSqlQueryBuilder &builder, const QStringList &columns)
 
static void sql_FetchById_WithRelation (qx::QxSqlRelationLinked *pRelationX, QString &sql, IxSqlQueryBuilder &builder)
 
static void sql_Insert (QString &sql, IxSqlQueryBuilder &builder)
 
static void sql_Update (QString &sql, IxSqlQueryBuilder &builder)
 
static void sql_Update (QString &sql, IxSqlQueryBuilder &builder, const QStringList &columns)
 
static void sql_Count_WithRelation (qx::QxSqlRelationLinked *pRelationX, QString &sql, IxSqlQueryBuilder &builder)
 
static void resolveOutput_FetchAll (void *t, QSqlQuery &query, IxSqlQueryBuilder &builder)
 
static void resolveOutput_FetchAll (void *t, QSqlQuery &query, IxSqlQueryBuilder &builder, const QStringList &columns)
 
static void resolveOutput_FetchAll_WithRelation (qx::QxSqlRelationLinked *pRelationX, void *t, QSqlQuery &query, IxSqlQueryBuilder &builder)
 
static void resolveInput_Insert (void *t, QSqlQuery &query, IxSqlQueryBuilder &builder)
 
static void resolveInput_Update (void *t, QSqlQuery &query, IxSqlQueryBuilder &builder)
 
static void resolveInput_Update (void *t, QSqlQuery &query, IxSqlQueryBuilder &builder, const QStringList &columns)
 
static void resolveInput_DeleteById (void *t, QSqlQuery &query, IxSqlQueryBuilder &builder)
 

Protected Member Functions

bool verifyColumns (const QStringList &columns) const QX_USED
 
bool isInitDone () const
 
QxSoftDeletesoftDelete ()
 
const QxSoftDeletesoftDelete () const
 
void setSoftDelete (const QxSoftDelete &o)
 
void setDataMemberX (IxDataMemberX *p)
 
bool findSqlQuery (const QString &key)
 
bool findSqlAlias (const QString &key)
 
void insertSqlAlias (const QString &key)
 

Private Attributes

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

Detailed Description

qx::IxSqlQueryBuilder : common interface to build SQL queries to communicate with database

Definition at line 68 of file IxSqlQueryBuilder.h.

Constructor & Destructor Documentation

◆ IxSqlQueryBuilder()

qx::IxSqlQueryBuilder::IxSqlQueryBuilder ( )

◆ ~IxSqlQueryBuilder()

virtual qx::IxSqlQueryBuilder::~IxSqlQueryBuilder ( )
pure virtual

Member Function Documentation

◆ addSqlCondition()

static QString qx::IxSqlQueryBuilder::addSqlCondition ( const QString & sql)
inlinestatic

Definition at line 113 of file IxSqlQueryBuilder.h.

◆ addSqlQueryAlias()

void qx::IxSqlQueryBuilder::addSqlQueryAlias ( const QString & sql,
const QString & sqlAlias )

◆ buildSql()

◆ clone()

virtual void qx::IxSqlQueryBuilder::clone ( const IxSqlQueryBuilder & other)
virtual

◆ existIdX()

void * qx::IxSqlQueryBuilder::existIdX ( long lIndex,
const QVariant & idOwner,
const QVariant & idData )

◆ findSqlAlias()

bool qx::IxSqlQueryBuilder::findSqlAlias ( const QString & key)
protected

◆ findSqlQuery()

bool qx::IxSqlQueryBuilder::findSqlQuery ( const QString & key)
protected

◆ getAddAutoIncrementIdToUpdateQuery()

bool qx::IxSqlQueryBuilder::getAddAutoIncrementIdToUpdateQuery ( ) const

◆ getCartesianProduct()

bool qx::IxSqlQueryBuilder::getCartesianProduct ( ) const

◆ getCurrentBuildingSql()

QString & qx::IxSqlQueryBuilder::getCurrentBuildingSql ( ) const

◆ getDaoHelper()

qx::dao::detail::IxDao_Helper * qx::IxSqlQueryBuilder::getDaoHelper ( ) const

◆ getDataCount()

long qx::IxSqlQueryBuilder::getDataCount ( ) const

◆ getDataId()

IxDataMember * qx::IxSqlQueryBuilder::getDataId ( ) const

◆ getDataMemberX()

IxDataMemberX * qx::IxSqlQueryBuilder::getDataMemberX ( ) const

◆ getHashRelation()

QString qx::IxSqlQueryBuilder::getHashRelation ( ) const

◆ getLstDataMember()

QxCollection< QString, IxDataMember * > * qx::IxSqlQueryBuilder::getLstDataMember ( ) const

◆ getLstRelation()

IxSqlRelationX * qx::IxSqlQueryBuilder::getLstRelation ( ) const

◆ getRelationCount()

long qx::IxSqlQueryBuilder::getRelationCount ( ) const

◆ getSoftDelete()

QxSoftDelete qx::IxSqlQueryBuilder::getSoftDelete ( ) const

◆ getSqlQuery()

QString qx::IxSqlQueryBuilder::getSqlQuery ( ) const

◆ init()

virtual void qx::IxSqlQueryBuilder::init ( )
virtual

Reimplemented in qx::QxSqlQueryBuilder< T >.

◆ initIdX()

void qx::IxSqlQueryBuilder::initIdX ( long lAllRelationCount)

◆ insertIdX()

bool qx::IxSqlQueryBuilder::insertIdX ( long lIndex,
const QVariant & idOwner,
const QVariant & idData,
void * ptr )

◆ insertSqlAlias()

void qx::IxSqlQueryBuilder::insertSqlAlias ( const QString & key)
protected

◆ isInitDone()

bool qx::IxSqlQueryBuilder::isInitDone ( ) const
protected

◆ nextData()

IxDataMember * qx::IxSqlQueryBuilder::nextData ( long & l) const

◆ nextRelation()

IxSqlRelation * qx::IxSqlQueryBuilder::nextRelation ( long & l) const

◆ replaceSqlQueryAlias()

void qx::IxSqlQueryBuilder::replaceSqlQueryAlias ( QString & sql) const

◆ resolveInput_DeleteById()

static void qx::IxSqlQueryBuilder::resolveInput_DeleteById ( void * t,
QSqlQuery & query,
IxSqlQueryBuilder & builder )
static

◆ resolveInput_Insert()

static void qx::IxSqlQueryBuilder::resolveInput_Insert ( void * t,
QSqlQuery & query,
IxSqlQueryBuilder & builder )
static

◆ resolveInput_Update() [1/2]

static void qx::IxSqlQueryBuilder::resolveInput_Update ( void * t,
QSqlQuery & query,
IxSqlQueryBuilder & builder )
static

◆ resolveInput_Update() [2/2]

static void qx::IxSqlQueryBuilder::resolveInput_Update ( void * t,
QSqlQuery & query,
IxSqlQueryBuilder & builder,
const QStringList & columns )
static

◆ resolveOutput_FetchAll() [1/2]

static void qx::IxSqlQueryBuilder::resolveOutput_FetchAll ( void * t,
QSqlQuery & query,
IxSqlQueryBuilder & builder )
static

◆ resolveOutput_FetchAll() [2/2]

static void qx::IxSqlQueryBuilder::resolveOutput_FetchAll ( void * t,
QSqlQuery & query,
IxSqlQueryBuilder & builder,
const QStringList & columns )
static

◆ resolveOutput_FetchAll_WithRelation()

static void qx::IxSqlQueryBuilder::resolveOutput_FetchAll_WithRelation ( qx::QxSqlRelationLinked * pRelationX,
void * t,
QSqlQuery & query,
IxSqlQueryBuilder & builder )
static

◆ setCartesianProduct()

void qx::IxSqlQueryBuilder::setCartesianProduct ( bool b)

◆ setDaoHelper()

void qx::IxSqlQueryBuilder::setDaoHelper ( qx::dao::detail::IxDao_Helper * p)

◆ setDataMemberX()

void qx::IxSqlQueryBuilder::setDataMemberX ( IxDataMemberX * p)
protected

◆ setHashRelation()

void qx::IxSqlQueryBuilder::setHashRelation ( const QString & s)

◆ setSoftDelete()

void qx::IxSqlQueryBuilder::setSoftDelete ( const QxSoftDelete & o)
protected

◆ setSqlQuery()

void qx::IxSqlQueryBuilder::setSqlQuery ( const QString & sql,
const QString & key = QString() )

◆ softDelete() [1/2]

QxSoftDelete & qx::IxSqlQueryBuilder::softDelete ( )
protected

◆ softDelete() [2/2]

const QxSoftDelete & qx::IxSqlQueryBuilder::softDelete ( ) const
protected

◆ sql_Count_WithRelation()

static void qx::IxSqlQueryBuilder::sql_Count_WithRelation ( qx::QxSqlRelationLinked * pRelationX,
QString & sql,
IxSqlQueryBuilder & builder )
static

◆ sql_CreateTable()

static void qx::IxSqlQueryBuilder::sql_CreateTable ( QString & sql,
IxSqlQueryBuilder & builder )
static

◆ sql_DeleteById()

static void qx::IxSqlQueryBuilder::sql_DeleteById ( QString & sql,
IxSqlQueryBuilder & builder,
bool bSoftDelete )
static

◆ sql_Exist()

static void qx::IxSqlQueryBuilder::sql_Exist ( QString & sql,
IxSqlQueryBuilder & builder )
static

◆ sql_FetchAll() [1/2]

static void qx::IxSqlQueryBuilder::sql_FetchAll ( QString & sql,
IxSqlQueryBuilder & builder )
static

◆ sql_FetchAll() [2/2]

static void qx::IxSqlQueryBuilder::sql_FetchAll ( QString & sql,
IxSqlQueryBuilder & builder,
const QStringList & columns )
static

◆ sql_FetchAll_WithRelation()

static void qx::IxSqlQueryBuilder::sql_FetchAll_WithRelation ( qx::QxSqlRelationLinked * pRelationX,
QString & sql,
IxSqlQueryBuilder & builder )
static

◆ sql_FetchById() [1/2]

static void qx::IxSqlQueryBuilder::sql_FetchById ( QString & sql,
IxSqlQueryBuilder & builder )
static

◆ sql_FetchById() [2/2]

static void qx::IxSqlQueryBuilder::sql_FetchById ( QString & sql,
IxSqlQueryBuilder & builder,
const QStringList & columns )
static

◆ sql_FetchById_WithRelation()

static void qx::IxSqlQueryBuilder::sql_FetchById_WithRelation ( qx::QxSqlRelationLinked * pRelationX,
QString & sql,
IxSqlQueryBuilder & builder )
static

◆ sql_Insert()

static void qx::IxSqlQueryBuilder::sql_Insert ( QString & sql,
IxSqlQueryBuilder & builder )
static

◆ sql_Update() [1/2]

static void qx::IxSqlQueryBuilder::sql_Update ( QString & sql,
IxSqlQueryBuilder & builder )
static

◆ sql_Update() [2/2]

static void qx::IxSqlQueryBuilder::sql_Update ( QString & sql,
IxSqlQueryBuilder & builder,
const QStringList & columns )
static

◆ table()

QString qx::IxSqlQueryBuilder::table ( ) const

◆ verifyColumns()

bool qx::IxSqlQueryBuilder::verifyColumns ( const QStringList & columns) const
protected

Member Data Documentation

◆ m_pImpl

std::unique_ptr<IxSqlQueryBuilderImpl> qx::IxSqlQueryBuilder::m_pImpl
private

Private implementation idiom.

Definition at line 74 of file IxSqlQueryBuilder.h.


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