Public Types |
enum | relation_type {
no_relation,
one_to_one,
one_to_many,
many_to_one,
many_to_many
} |
Public Member Functions |
| IxSqlRelation (IxDataMember *p) |
virtual | ~IxSqlRelation ()=0 |
QxCollection< QString,
IxDataMember * > * | getLstDataMember () const |
IxSqlRelationX * | getLstRelation () const |
void | setSqlJoinType (qx::dao::sql_join::join_type e) |
qx::dao::sql_join::join_type | getSqlJoinType () const |
relation_type | getRelationType () const |
IxClass * | getClass () const |
IxClass * | getClassOwner () const |
IxDataMember * | getDataMember () const |
IxDataMemberX * | getDataMemberX () const |
IxDataMember * | getDataId () const |
IxDataMember * | getDataIdOwner () const |
void | linkRelationKeyTo (IxDataMember *p) |
IxDataMember * | getLinkRelationKey () const |
QString | getKey () const |
QString | getForeignKey () const |
QString | getForeignKeyOwner () const |
QString | getForeignKeyDataType () const |
QString | getExtraTable () const |
long | getDataCount () const |
long | getRelationCount () const |
IxDataMember * | getDataByKey (const QString &sKey) const |
IxDataMember * | nextData (long &lIndex) const |
IxSqlRelation * | nextRelation (long &lIndex) const |
QString | table () const |
QString | tableAlias (QxSqlRelationParams ¶ms) const |
QString | tableAliasOwner (QxSqlRelationParams ¶ms) const |
QString | getSqlJoin (qx::dao::sql_join::join_type e=qx::dao::sql_join::no_join) const |
bool | traceSqlQuery () const |
virtual void | init () |
virtual QString | getDescription () const =0 |
virtual QString | createExtraTable () const =0 |
virtual bool | getCartesianProduct () const =0 |
virtual QVariant | getIdFromQuery (bool bEager, QxSqlRelationParams ¶ms, int iOffset, int iNameIndex) const =0 |
virtual void | updateOffset (bool bEager, QxSqlRelationParams ¶ms) const =0 |
virtual void | createTable (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazySelect (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerSelect (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyFrom (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerFrom (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyJoin (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerJoin (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyWhere (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerWhere (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyWhereSoftDelete (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerWhereSoftDelete (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyFetch_ResolveInput (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerFetch_ResolveInput (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyFetch_ResolveOutput (QxSqlRelationParams ¶ms) const =0 |
virtual void * | eagerFetch_ResolveOutput (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyInsert (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyInsert_Values (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyUpdate (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyInsert_ResolveInput (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyUpdate_ResolveInput (QxSqlRelationParams ¶ms) const =0 |
virtual QSqlError | onBeforeSave (QxSqlRelationParams ¶ms) const =0 |
virtual QSqlError | onAfterSave (QxSqlRelationParams ¶ms) const =0 |
bool | verifyOffset (QxSqlRelationParams ¶ms, bool bId) const QX_USED |
Static Public Member Functions |
static void | setTraceRelationInit (bool bTrace) |
Protected Member Functions |
QVariant | getIdFromQuery_ManyToMany (bool bEager, QxSqlRelationParams ¶ms, int iOffset, int iNameIndex) const |
QVariant | getIdFromQuery_ManyToOne (bool bEager, QxSqlRelationParams ¶ms, int iOffset, int iNameIndex) const |
QVariant | getIdFromQuery_OneToMany (bool bEager, QxSqlRelationParams ¶ms, int iOffset, int iNameIndex) const |
QVariant | getIdFromQuery_OneToOne (bool bEager, QxSqlRelationParams ¶ms, int iOffset, int iNameIndex) const |
void | updateOffset_ManyToMany (bool bEager, QxSqlRelationParams ¶ms) const |
void | updateOffset_ManyToOne (bool bEager, QxSqlRelationParams ¶ms) const |
void | updateOffset_OneToMany (bool bEager, QxSqlRelationParams ¶ms) const |
void | updateOffset_OneToOne (bool bEager, QxSqlRelationParams ¶ms) const |
void | eagerSelect_ManyToMany (QxSqlRelationParams ¶ms) const |
void | eagerSelect_ManyToOne (QxSqlRelationParams ¶ms) const |
void | eagerSelect_OneToMany (QxSqlRelationParams ¶ms) const |
void | eagerSelect_OneToOne (QxSqlRelationParams ¶ms) const |
void | eagerJoin_ManyToMany (QxSqlRelationParams ¶ms) const |
void | eagerJoin_ManyToOne (QxSqlRelationParams ¶ms) const |
void | eagerJoin_OneToMany (QxSqlRelationParams ¶ms) const |
void | eagerJoin_OneToOne (QxSqlRelationParams ¶ms) const |
void | eagerWhereSoftDelete_ManyToMany (QxSqlRelationParams ¶ms) const |
void | eagerWhereSoftDelete_ManyToOne (QxSqlRelationParams ¶ms) const |
void | eagerWhereSoftDelete_OneToMany (QxSqlRelationParams ¶ms) const |
void | eagerWhereSoftDelete_OneToOne (QxSqlRelationParams ¶ms) const |
void | lazySelect_ManyToOne (QxSqlRelationParams ¶ms) const |
void | lazyInsert_ManyToOne (QxSqlRelationParams ¶ms) const |
void | lazyInsert_Values_ManyToOne (QxSqlRelationParams ¶ms) const |
void | lazyUpdate_ManyToOne (QxSqlRelationParams ¶ms) const |
void | createTable_ManyToOne (QxSqlRelationParams ¶ms) const |
QSqlError | deleteFromExtraTable_ManyToMany (QxSqlRelationParams ¶ms) const |
QString | createExtraTable_ManyToMany () const |
bool | addLazyRelation (QxSqlRelationParams ¶ms, IxSqlRelation *pRelation) const |
bool | canInit () const |
void | setIsSameDataOwner (int i) |
void | setClass (IxClass *pClass, IxClass *pClassOwner) |
void | setRelationType (relation_type e) |
void | setForeignKey (const QString &s) const |
void | setForeignKeyOwner (const QString &s) const |
void | setForeignKeyDataType (const QString &s) const |
void | setExtraTable (const QString &s) const |
Private Attributes |
std::unique_ptr
< IxSqlRelationImpl > | m_pImpl |
| Private implementation idiom.
|
qx::IxSqlRelation : common interface for all relationships defined between 2 classes (or between 2 tables in database)
Definition at line 68 of file IxSqlRelation.h.