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

qx::dao::detail::IxSqlElement : common interface for all SQL elements to build SQL query More...

#include <IxSqlElement.h>

Inheritance diagram for qx::dao::detail::IxSqlElement:
qx::dao::detail::QxSqlCompare qx::dao::detail::QxSqlElementTemp qx::dao::detail::QxSqlEmbedQuery qx::dao::detail::QxSqlExpression qx::dao::detail::QxSqlFreeText qx::dao::detail::QxSqlIn qx::dao::detail::QxSqlIsBetween qx::dao::detail::QxSqlIsNull qx::dao::detail::QxSqlLimit qx::dao::detail::QxSqlSort

Public Types

enum  type_class {
  _no_type , _sql_compare , _sql_element_temp , _sql_expression ,
  _sql_free_text , _sql_in , _sql_is_between , _sql_is_null ,
  _sql_limit , _sql_sort , _sql_embed_query
}
 

Public Member Functions

 IxSqlElement (int index)
 
virtual ~IxSqlElement ()
 
void setColumn (const QString &column)
 
void setColumns (const QStringList &columns)
 
void setValue (const QVariant &val)
 
void setValues (const QVariantList &values)
 
virtual IxSqlElement::type_class getTypeClass () const =0
 
virtual QString toString () const =0
 
virtual void resolve (QSqlQuery &query, qx::QxCollection< QString, QVariantList > *pLstExecBatch=NULL) const =0
 
virtual void postProcess (QString &sql) const =0
 
virtual void clone (IxSqlElement *other)
 
template<class Archive >
void qxSave (Archive &ar) const
 
template<class Archive >
void qxLoad (Archive &ar)
 

Protected Member Functions

void updateKeys ()
 
virtual QString getExtraSettings () const =0
 
virtual void setExtraSettings (const QString &s)=0
 

Protected Attributes

int m_iIndex
 Index of SQL element to build unique string.
 
QStringList m_lstColumns
 List of columns associated to SQL element.
 
QStringList m_lstKeys
 List of keys associated to SQL element.
 
QList< QVariant > m_lstValues
 List of values associated to SQL element.
 
IxSqlGeneratorm_pSqlGenerator
 SQL generator to build SQL query specific for each database.
 

Friends

struct qx::cvt::detail::QxConvert_ToJson< qx::dao::detail::IxSqlElement >
 
struct qx::cvt::detail::QxConvert_FromJson< qx::dao::detail::IxSqlElement >
 
QX_DLL_EXPORT QDataStream & operator<< (QDataStream &stream, const qx::dao::detail::IxSqlElement &t)
 
QX_DLL_EXPORT QDataStream & operator>> (QDataStream &stream, qx::dao::detail::IxSqlElement &t)
 
QX_DLL_EXPORT QJsonValue qx::cvt::detail::QxConvert_ToJson_Helper (const qx::dao::detail::IxSqlElement &t, const QString &format)
 
QX_DLL_EXPORT qx_bool qx::cvt::detail::QxConvert_FromJson_Helper (const QJsonValue &j, qx::dao::detail::IxSqlElement &t, const QString &format)
 

Detailed Description

qx::dao::detail::IxSqlElement : common interface for all SQL elements to build SQL query

Definition at line 102 of file IxSqlElement.h.

Member Enumeration Documentation

◆ type_class

Enumerator
_no_type 
_sql_compare 
_sql_element_temp 
_sql_expression 
_sql_free_text 
_sql_in 
_sql_is_between 
_sql_is_null 
_sql_limit 
_sql_sort 
_sql_embed_query 

Definition at line 117 of file IxSqlElement.h.

Constructor & Destructor Documentation

◆ IxSqlElement()

qx::dao::detail::IxSqlElement::IxSqlElement ( int index)

◆ ~IxSqlElement()

virtual qx::dao::detail::IxSqlElement::~IxSqlElement ( )
virtual

Member Function Documentation

◆ clone()

virtual void qx::dao::detail::IxSqlElement::clone ( IxSqlElement * other)
virtual

◆ getExtraSettings()

◆ getTypeClass()

◆ postProcess()

◆ qxLoad()

template<class Archive >
void qx::dao::detail::IxSqlElement::qxLoad ( Archive & ar)
inline

Definition at line 161 of file IxSqlElement.h.

◆ qxSave()

template<class Archive >
void qx::dao::detail::IxSqlElement::qxSave ( Archive & ar) const
inline

Definition at line 148 of file IxSqlElement.h.

◆ resolve()

◆ setColumn()

void qx::dao::detail::IxSqlElement::setColumn ( const QString & column)

◆ setColumns()

void qx::dao::detail::IxSqlElement::setColumns ( const QStringList & columns)

◆ setExtraSettings()

◆ setValue()

void qx::dao::detail::IxSqlElement::setValue ( const QVariant & val)

◆ setValues()

void qx::dao::detail::IxSqlElement::setValues ( const QVariantList & values)

◆ toString()

◆ updateKeys()

void qx::dao::detail::IxSqlElement::updateKeys ( )
protected

Friends And Related Symbol Documentation

◆ operator<<

QX_DLL_EXPORT QDataStream & operator<< ( QDataStream & stream,
const qx::dao::detail::IxSqlElement & t )
friend

◆ operator>>

QX_DLL_EXPORT QDataStream & operator>> ( QDataStream & stream,
qx::dao::detail::IxSqlElement & t )
friend

◆ qx::cvt::detail::QxConvert_FromJson< qx::dao::detail::IxSqlElement >

Definition at line 106 of file IxSqlElement.h.

◆ qx::cvt::detail::QxConvert_FromJson_Helper

QX_DLL_EXPORT qx_bool qx::cvt::detail::QxConvert_FromJson_Helper ( const QJsonValue & j,
qx::dao::detail::IxSqlElement & t,
const QString & format )
friend

◆ qx::cvt::detail::QxConvert_ToJson< qx::dao::detail::IxSqlElement >

Definition at line 106 of file IxSqlElement.h.

◆ qx::cvt::detail::QxConvert_ToJson_Helper

QX_DLL_EXPORT QJsonValue qx::cvt::detail::QxConvert_ToJson_Helper ( const qx::dao::detail::IxSqlElement & t,
const QString & format )
friend

Member Data Documentation

◆ m_iIndex

int qx::dao::detail::IxSqlElement::m_iIndex
protected

Index of SQL element to build unique string.

Definition at line 122 of file IxSqlElement.h.

◆ m_lstColumns

QStringList qx::dao::detail::IxSqlElement::m_lstColumns
protected

List of columns associated to SQL element.

Definition at line 123 of file IxSqlElement.h.

◆ m_lstKeys

QStringList qx::dao::detail::IxSqlElement::m_lstKeys
protected

List of keys associated to SQL element.

Definition at line 124 of file IxSqlElement.h.

◆ m_lstValues

QList<QVariant> qx::dao::detail::IxSqlElement::m_lstValues
protected

List of values associated to SQL element.

Definition at line 125 of file IxSqlElement.h.

◆ m_pSqlGenerator

IxSqlGenerator* qx::dao::detail::IxSqlElement::m_pSqlGenerator
protected

SQL generator to build SQL query specific for each database.

Definition at line 126 of file IxSqlElement.h.


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