1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
#include "sqliteindexedcolumn.h"
#include "parser/statementtokenbuilder.h"
SqliteIndexedColumn::SqliteIndexedColumn()
{
}
SqliteIndexedColumn::SqliteIndexedColumn(const SqliteIndexedColumn& other) :
SqliteStatement(other), name(other.name), sortOrder(other.sortOrder), collate(other.collate)
{
}
SqliteIndexedColumn::SqliteIndexedColumn(const QString &name, const QString &collate, SqliteSortOrder sortOrder)
: SqliteIndexedColumn()
{
this->name = name;
this->sortOrder = sortOrder;
this->collate = collate;
}
SqliteIndexedColumn::SqliteIndexedColumn(const QString& name)
: SqliteIndexedColumn()
{
this->name = name;
}
SqliteStatement* SqliteIndexedColumn::clone()
{
return new SqliteIndexedColumn(*this);
}
QString SqliteIndexedColumn::getColumnName() const
{
return name;
}
void SqliteIndexedColumn::setColumnName(const QString& name)
{
this->name = name;
}
void SqliteIndexedColumn::setCollation(const QString& name)
{
this->collate = name;
}
QStringList SqliteIndexedColumn::getColumnsInStatement()
{
return getStrListFromValue(name);
}
TokenList SqliteIndexedColumn::getColumnTokensInStatement()
{
return getTokenListFromNamedKey("nm");
}
TokenList SqliteIndexedColumn::rebuildTokensFromContents()
{
StatementTokenBuilder builder;
builder.withOther(name);
if (!collate.isNull())
builder.withSpace().withKeyword("COLLATE").withSpace().withOther(collate);
builder.withSortOrder(sortOrder);
return builder.build();
}
QString SqliteIndexedColumn::getCollation() const
{
return collate;
}
void SqliteIndexedColumn::clearCollation()
{
collate.clear();
}
|