qx::QxSqlRelation_ManyToMany<DataType, Owner> : manage a relationship many-to-many defined between 2 classes (or between 2 tables in database)
More...
|
| QxSqlRelation_ManyToMany (IxDataMember *p, const QString &sExtraTable, const QString &sForeignKeyOwner, const QString &sForeignKeyDataType) |
|
virtual | ~QxSqlRelation_ManyToMany () |
|
virtual QString | getDescription () const |
|
virtual bool | getCartesianProduct () const |
|
virtual void | createTable (QxSqlRelationParams ¶ms) const |
|
virtual void | lazySelect (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyFrom (QxSqlRelationParams ¶ms) const |
|
virtual void | eagerFrom (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyJoin (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyWhere (QxSqlRelationParams ¶ms) const |
|
virtual void | eagerWhere (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyWhereSoftDelete (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyFetch_ResolveInput (QxSqlRelationParams ¶ms) const |
|
virtual void | eagerFetch_ResolveInput (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyFetch_ResolveOutput (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyInsert (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyInsert_Values (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyUpdate (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyInsert_ResolveInput (QxSqlRelationParams ¶ms) const |
|
virtual void | lazyUpdate_ResolveInput (QxSqlRelationParams ¶ms) const |
|
virtual QSqlError | onBeforeSave (QxSqlRelationParams ¶ms) const |
|
virtual QVariant | getIdFromQuery (bool bEager, QxSqlRelationParams ¶ms, int iOffset, int iNameIndex) const |
|
virtual void | updateOffset (bool bEager, QxSqlRelationParams ¶ms) const |
|
virtual void | eagerSelect (QxSqlRelationParams ¶ms) const |
|
virtual void | eagerJoin (QxSqlRelationParams ¶ms) const |
|
virtual void | eagerWhereSoftDelete (QxSqlRelationParams ¶ms) const |
|
virtual void * | eagerFetch_ResolveOutput (QxSqlRelationParams ¶ms) const |
|
virtual QSqlError | onAfterSave (QxSqlRelationParams ¶ms) const |
|
virtual QString | createExtraTable () const |
|
| QxSqlRelation (IxDataMember *p) |
|
virtual | ~QxSqlRelation () |
|
virtual void | init () |
|
| 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 |
|
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 |
|
bool | verifyOffset (QxSqlRelationParams ¶ms, bool bId) const QX_USED |
|
| QxPropertyBag () |
|
virtual | ~QxPropertyBag () |
|
void | setPropertyBag (const QString &key, const QVariant &value) |
|
QVariant | getPropertyBag (const QString &key) const |
|
void | removePropertyBag (const QString &key) |
|
void | clearPropertyBag () |
|
long | countPropertyBag () const |
|
QList< QString > | getAllPropertyBagKeys () const |
|
|
enum | relation_type {
no_relation
, one_to_one
, one_to_many
, many_to_one
,
many_to_many
} |
|
static void | setTraceRelationInit (bool bTrace) |
|
enum | { is_valid = (qx::trait::is_qx_registered<type_data>::value && qx::trait::is_qx_registered<type_owner>::value)
} |
|
enum | { is_data_pointer = (std::is_pointer<DataType>::value || qx::trait::is_smart_ptr<DataType>::value)
} |
|
enum | { is_data_container = qx::trait::is_container<type_container>::value
} |
|
enum | { is_same_data_owner = std::is_same<type_data, type_owner>::value
} |
|
typedef qx::trait::remove_attr< DataType >::type | type_tmp_1 |
|
typedef qx::trait::remove_smart_ptr< type_tmp_1 >::type | type_tmp_2 |
|
typedef type_tmp_2 | type_container |
|
typedef qx::trait::generic_container< type_container > | type_generic_container |
|
typedef type_generic_container::type_item | type_item |
|
typedef std::conditional< qx::trait::is_container< type_container >::value, typenametype_generic_container::type_value_qx, type_container >::type | type_tmp_3 |
|
typedef QxSqlRelation< DataType, Owner >::type_tmp_3 | type_data |
|
typedef Owner | type_owner |
|
typedef QHash< QString, QVariant > | type_hash_prop_bag |
|
typedef std::shared_ptr< type_hash_prop_bag > | type_hash_prop_bag_ptr |
|
DataType * | getDataTypePtr (QxSqlRelationParams ¶ms) const |
|
type_owner & | getOwner (QxSqlRelationParams ¶ms) const |
|
type_data & | getData (QxSqlRelationParams ¶ms) const |
|
type_container & | getContainer (QxSqlRelationParams ¶ms) const |
|
type_item | createItem () const |
|
bool | isNullData (QxSqlRelationParams ¶ms) const |
|
bool | callTriggerBeforeFetch (type_data &t, QxSqlRelationParams ¶ms) const |
|
bool | callTriggerAfterFetch (type_data &t, QxSqlRelationParams ¶ms) const |
|
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 |
|
type_hash_prop_bag_ptr | m_lstPropertyBag |
| List of all properties in the bag (meta-data)
|
|
template<class DataType, class Owner>
class qx::QxSqlRelation_ManyToMany< DataType, Owner >
qx::QxSqlRelation_ManyToMany<DataType, Owner> : manage a relationship many-to-many defined between 2 classes (or between 2 tables in database)
Definition at line 55 of file QxSqlRelation_ManyToMany.h.