Changeset 7d7659d for src/mvc/event.cpp
- Timestamp:
- 01/21/10 14:24:08 (13 years ago)
- Branches:
- master, qt5
- Children:
- 06570e9
- Parents:
- d8d5bd2
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/mvc/event.cpp
rd8d5bd2 r7d7659d 1 1 #include "event.h" 2 2 3 // 'event' record is splitted into two separate tables 'event' and 'virtual_event' 4 // for the FTS (Full-Text-Search) support and so, it is necessary to provide/use 5 // two table names + corresponding parameters/methods, see bellow 6 QString const Event::sTable1Name = QString("event"); 7 QString const Event::sTable2Name = QString("virtual_event"); 8 int const Event::sTable1ColCount = 9; // see 'toRecord()' for more details 9 int const Event::sTable2ColCount = 5; // see 'toRecord()' for more details 3 QString const Event::sTableName = QString("event"); 10 4 11 5 QSqlRecord const Event::sColumns = Event::toRecord(QList<QSqlField>() 12 /* 'columns from Table 1 */13 6 << QSqlField("id", QVariant::Int) 14 7 << QSqlField("xid_conference", QVariant::Int) … … 20 13 << QSqlField("favourite", QVariant::Bool) 21 14 << QSqlField("alarm", QVariant::Bool) 22 /* 'columns' from Table2 */23 15 << QSqlField("tag", QVariant::String) 24 16 << QSqlField("title", QVariant::String) … … 30 22 Event Event::getById(int id, int conferenceId) 31 23 { 24 32 25 QSqlQuery query; 33 query.prepare( 34 selectQueryJoin2T("id") 35 + QString("WHERE %1.id = :id AND %1.xid_conference = :conf").arg(sTable1Name)); 26 query.prepare(selectQuery() + "WHERE id = :id AND xid_conference = :conf"); 36 27 query.bindValue(":id", id); 37 28 query.bindValue(":conf", conferenceId); 38 39 29 return loadOne(query); 40 30 } … … 43 33 { 44 34 QSqlQuery query; 45 query.prepare( 46 selectQueryJoin2T("id") 47 + QString("WHERE %1.xid_conference = :conf AND %1.start >= :start AND %1.start < :end ORDER BY %1.%2").arg(sTable1Name).arg(orderBy)); 35 query.prepare(selectQuery() + QString("WHERE xid_conference = :conf AND start >= :start AND start < :end ORDER BY %1").arg(orderBy)); 48 36 query.bindValue(":conf", conferenceId); 49 37 query.bindValue(":start", convertToDb(date, QVariant::DateTime)); … … 56 44 { 57 45 QSqlQuery query; 58 query.prepare( 59 selectQueryJoin2T("id") 60 + QString("WHERE %1.xid_conference = :conf AND %1.start >= :start AND %1.start < :end AND %1.favourite = 1 ORDER BY %1.start").arg(sTable1Name)); 46 query.prepare(selectQuery() + QString("WHERE xid_conference = :conf AND start >= :start AND start < :end AND favourite = 1 ORDER BY start")); 61 47 query.bindValue(":conf", conferenceId); 62 48 query.bindValue(":start", convertToDb(date, QVariant::DateTime)); … … 117 103 { 118 104 119 QString strQuery = QString("SELECT %1 FROM EVENT INNER JOIN VIRTUAL_EVENT USING (xid_conference, id) " 120 "INNER JOIN SEARCH_EVENT USING (xid_conference, id) ").arg( columnsForSelectJoin2T() ); 121 strQuery += QString( 122 "WHERE %1.xid_conference = :conf AND %1.start >= :start AND %1.start < :end ORDER BY %1.%2").arg(sTable1Name, orderBy); 105 QString strQuery = QString("SELECT %1 FROM EVENT INNER JOIN SEARCH_EVENT USING (xid_conference, id) ").arg(columnsForSelect()); 106 strQuery += QString("WHERE xid_conference = :conf AND start >= :start AND start < :end ORDER BY %1").arg(orderBy); 123 107 qDebug() << strQuery; 124 108 QSqlQuery query;
Note: See TracChangeset
for help on using the changeset viewer.