skip and take new sign
This commit is contained in:
parent
103cb49214
commit
9c0df27eea
|
|
@ -466,6 +466,7 @@ QString SqlGeneratorBase::selectCommand(const QString &tableName,
|
|||
sql = sql.replace(_database->model().at(i)->className() + ".",
|
||||
_database->model().at(i)->name() + ".");
|
||||
|
||||
appendSkipTake(sql, skip, take);
|
||||
replaceTableNames(sql);
|
||||
|
||||
return sql + " ";
|
||||
|
|
@ -495,6 +496,7 @@ QString SqlGeneratorBase::selectCommand(const QString &tableName,
|
|||
sql = sql.replace(_database->model().at(i)->className() + ".",
|
||||
_database->model().at(i)->name() + ".");
|
||||
|
||||
appendSkipTake(sql, skip, take);
|
||||
replaceTableNames(sql);
|
||||
|
||||
return sql + " ";
|
||||
|
|
@ -826,6 +828,10 @@ SqlGeneratorBase::operatorString(const PhraseData::Condition &cond) const
|
|||
}
|
||||
}
|
||||
|
||||
void SqlGeneratorBase::appendSkipTake(QString &sql, int skip, int take)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
QString SqlGeneratorBase::createConditionalPhrase(const PhraseData *d) const
|
||||
{
|
||||
|
|
|
|||
|
|
@ -119,7 +119,7 @@ public:
|
|||
virtual QVariant readValue(const QVariant::Type &type, const QVariant &dbValue);
|
||||
virtual QString phrase(const PhraseData *d) const;
|
||||
virtual QString operatorString(const PhraseData::Condition &cond) const;
|
||||
|
||||
virtual void appendSkipTake(QString &sql, int skip = -1, int take = -1);
|
||||
private:
|
||||
QString createConditionalPhrase(const PhraseData *d) const;
|
||||
QString createFieldPhrase(const PhraseList &ph);
|
||||
|
|
|
|||
|
|
@ -71,24 +71,12 @@ QString SqliteGenerator::fieldType(FieldModel *field)
|
|||
return dbType;
|
||||
}
|
||||
|
||||
//QString SqliteGenerator::selectCommand(SqlGeneratorBase::AgregateType t,
|
||||
// QString agregateArg,
|
||||
// QString tableName,
|
||||
// QList<WherePhrase> &wheres,
|
||||
// QList<WherePhrase> &orders,
|
||||
// QList<RelationModel*> joins,
|
||||
// int skip, int take)
|
||||
//{
|
||||
// QString command = SqlGeneratorBase::selectCommand(t, agregateArg,
|
||||
// tableName,
|
||||
// wheres, orders,
|
||||
// joins, skip, take);
|
||||
|
||||
// if (take != -1 && skip != -1)
|
||||
// command.append(QString(" LIMIT %1 OFFSET %2")
|
||||
// .arg(take)
|
||||
// .arg(skip));
|
||||
// return command;
|
||||
//}
|
||||
void SqliteGenerator::appendSkipTake(QString &sql, int skip, int take)
|
||||
{
|
||||
if (take != -1 && skip != -1)
|
||||
sql.append(QString(" LIMIT %1 OFFSET %2")
|
||||
.arg(take)
|
||||
.arg(skip));
|
||||
}
|
||||
|
||||
NUT_END_NAMESPACE
|
||||
|
|
|
|||
|
|
@ -33,11 +33,7 @@ public:
|
|||
|
||||
QString fieldType(FieldModel *field);
|
||||
|
||||
// QString selectCommand(AgregateType t, QString agregateArg,
|
||||
// QString tableName,
|
||||
// QList<WherePhrase> &wheres,
|
||||
// QList<WherePhrase> &orders,
|
||||
// QList<RelationModel *> joins, int skip, int take);
|
||||
void appendSkipTake(QString &sql, int skip, int take);
|
||||
};
|
||||
|
||||
NUT_END_NAMESPACE
|
||||
|
|
|
|||
|
|
@ -307,7 +307,7 @@ Q_OUTOFLINE_TEMPLATE QList<F> Query<T>::select(const FieldPhrase<F> f)
|
|||
d->wherePhrase,
|
||||
d->relations,
|
||||
d->skip, d->take);
|
||||
|
||||
qDebug() << d->sql;
|
||||
QSqlQuery q = d->database->exec(d->sql);
|
||||
|
||||
while (q.next()) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue