Fixed some warnings and typos (#99)
* Draft of support for the unique constraint * Update table.md Removed the note beside the unique keyword description * Fixed typo * Fixed typo * Removed a warning on initialization order * Small refactoring of TableSet::at() and TableSet::operator[] * Fixed a couple of warnings
This commit is contained in:
parent
42c4016273
commit
ee7151ea2f
|
|
@ -136,7 +136,7 @@ bool DatabasePrivate::updateDatabase()
|
||||||
DatabaseModel current = currentModel;
|
DatabaseModel current = currentModel;
|
||||||
|
|
||||||
if (last == current) {
|
if (last == current) {
|
||||||
qDebug("Databse is up-to-date");
|
qDebug("Database is up-to-date");
|
||||||
//TODO: crash without this and I don't know why!
|
//TODO: crash without this and I don't know why!
|
||||||
changeLogs->clearChilds();
|
changeLogs->clearChilds();
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -154,9 +154,9 @@ bool DatabasePrivate::updateDatabase()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!last.count())
|
if (!last.count())
|
||||||
qDebug("Databse is new");
|
qDebug("Database is new");
|
||||||
else
|
else
|
||||||
qDebug("Databse is changed");
|
qDebug("Database is changed");
|
||||||
|
|
||||||
QStringList sql = sqlGenerator->diff(last, current);
|
QStringList sql = sqlGenerator->diff(last, current);
|
||||||
|
|
||||||
|
|
@ -607,6 +607,7 @@ int Database::saveChanges(bool cleanUp)
|
||||||
int rowsAffected = 0;
|
int rowsAffected = 0;
|
||||||
foreach (TableSetBase *ts, d->tableSets)
|
foreach (TableSetBase *ts, d->tableSets)
|
||||||
rowsAffected += ts->save(this, cleanUp);
|
rowsAffected += ts->save(this, cleanUp);
|
||||||
|
|
||||||
return rowsAffected;
|
return rowsAffected;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,7 @@ QString SqlGeneratorBase::saveRecord(Table *t, QString tableName)
|
||||||
return updateRecord(t, tableName);
|
return updateRecord(t, tableName);
|
||||||
|
|
||||||
case Table::NewCreated:
|
case Table::NewCreated:
|
||||||
case Table::FeatchedFromDB:
|
case Table::FetchedFromDB:
|
||||||
Q_UNREACHABLE();
|
Q_UNREACHABLE();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -324,7 +324,7 @@ Q_OUTOFLINE_TEMPLATE RowList<T> Query<T>::toList(int count)
|
||||||
tableset->add(row);
|
tableset->add(row);
|
||||||
}
|
}
|
||||||
|
|
||||||
row->setStatus(Table::FeatchedFromDB);
|
row->setStatus(Table::FetchedFromDB);
|
||||||
row->setParent(this);
|
row->setParent(this);
|
||||||
row->clear();
|
row->clear();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -39,8 +39,10 @@ void SqlModel::setRenderer(const std::function<QVariant (int, QVariant)> &render
|
||||||
_renderer = renderer;
|
_renderer = renderer;
|
||||||
}
|
}
|
||||||
|
|
||||||
SqlModel::SqlModel(Database *database, TableSetBase *tableSet, QObject *parent) :
|
SqlModel::SqlModel(Database *database, TableSetBase *tableSet, QObject *parent)
|
||||||
QAbstractTableModel(parent), d(new SqlModelPrivate(this)), _renderer(nullptr)
|
: QAbstractTableModel(parent)
|
||||||
|
, _renderer(nullptr)
|
||||||
|
, d(new SqlModelPrivate(this))
|
||||||
{
|
{
|
||||||
d->model = database->model()
|
d->model = database->model()
|
||||||
.tableByClassName(tableSet->childClassName());
|
.tableByClassName(tableSet->childClassName());
|
||||||
|
|
@ -122,7 +124,7 @@ Row<Table> SqlModel::at(const int &i) const
|
||||||
|
|
||||||
SqlModelPrivate::SqlModelPrivate(SqlModel *parent)
|
SqlModelPrivate::SqlModelPrivate(SqlModel *parent)
|
||||||
{
|
{
|
||||||
|
Q_UNUSED(parent)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -97,7 +97,7 @@ void Table::propertyChanged(const QString &propName)
|
||||||
|
|
||||||
d.detach();
|
d.detach();
|
||||||
d->changedProperties.insert(propName);
|
d->changedProperties.insert(propName);
|
||||||
if (d->status == FeatchedFromDB)
|
if (d->status == FetchedFromDB)
|
||||||
d->status = Modified;
|
d->status = Modified;
|
||||||
|
|
||||||
if (d->status == NewCreated)
|
if (d->status == NewCreated)
|
||||||
|
|
@ -181,7 +181,7 @@ int Table::save(Database *db)
|
||||||
|
|
||||||
foreach(TableSetBase *ts, d->childTableSets)
|
foreach(TableSetBase *ts, d->childTableSets)
|
||||||
ts->save(db);
|
ts->save(db);
|
||||||
setStatus(FeatchedFromDB);
|
setStatus(FetchedFromDB);
|
||||||
|
|
||||||
return q.numRowsAffected();
|
return q.numRowsAffected();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ public:
|
||||||
|
|
||||||
enum Status{
|
enum Status{
|
||||||
NewCreated,
|
NewCreated,
|
||||||
FeatchedFromDB,
|
FetchedFromDB,
|
||||||
Added,
|
Added,
|
||||||
Modified,
|
Modified,
|
||||||
Deleted
|
Deleted
|
||||||
|
|
|
||||||
|
|
@ -60,7 +60,7 @@ public:
|
||||||
|
|
||||||
int length() const;
|
int length() const;
|
||||||
Row<T> at(int i) const;
|
Row<T> at(int i) const;
|
||||||
const Row<T> operator[](int i) const;
|
Row<T> operator[](int i) const;
|
||||||
|
|
||||||
Query<T> *query(bool autoDelete = true);
|
Query<T> *query(bool autoDelete = true);
|
||||||
BulkInserter *bulkInserter();
|
BulkInserter *bulkInserter();
|
||||||
|
|
@ -100,7 +100,7 @@ Q_OUTOFLINE_TEMPLATE int TableSet<T>::length() const
|
||||||
}
|
}
|
||||||
|
|
||||||
template<class T>
|
template<class T>
|
||||||
Q_OUTOFLINE_TEMPLATE Row<T> TableSet<T >::at(int i) const
|
Q_OUTOFLINE_TEMPLATE Row<T> TableSet<T>::at(int i) const
|
||||||
{
|
{
|
||||||
#ifdef NUT_SHARED_POINTER
|
#ifdef NUT_SHARED_POINTER
|
||||||
return data->childs.at(i).template objectCast<T>();
|
return data->childs.at(i).template objectCast<T>();
|
||||||
|
|
@ -110,13 +110,9 @@ Q_OUTOFLINE_TEMPLATE Row<T> TableSet<T >::at(int i) const
|
||||||
}
|
}
|
||||||
|
|
||||||
template<class T>
|
template<class T>
|
||||||
Q_OUTOFLINE_TEMPLATE const Row<T> TableSet<T>::operator[](int i) const
|
Q_OUTOFLINE_TEMPLATE Row<T> TableSet<T>::operator[](int i) const
|
||||||
{
|
{
|
||||||
#ifdef NUT_SHARED_POINTER
|
return at(i);
|
||||||
return data->childs.at(i).template objectCast<T>();
|
|
||||||
#else
|
|
||||||
return reinterpret_cast<T*>(data->childs.at(i));
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
template<class T>
|
template<class T>
|
||||||
|
|
@ -131,7 +127,7 @@ Q_OUTOFLINE_TEMPLATE void TableSet<T>::append(Row<T> t)
|
||||||
// t->setModel(_database->model().tableByClassName(t->metaObject()->className()));
|
// t->setModel(_database->model().tableByClassName(t->metaObject()->className()));
|
||||||
|
|
||||||
t->setParentTableSet(this);
|
t->setParentTableSet(this);
|
||||||
if(t->status() != Table::FeatchedFromDB)
|
if(t->status() != Table::FetchedFromDB)
|
||||||
t->setStatus(Table::Added);
|
t->setStatus(Table::Added);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -53,16 +53,16 @@ int TableSetBase::save(Database *db, bool cleanUp)
|
||||||
masterModel = db->model().tableByClassName(data->table->metaObject()->className());
|
masterModel = db->model().tableByClassName(data->table->metaObject()->className());
|
||||||
|
|
||||||
foreach (Row<Table> t, data->childs) {
|
foreach (Row<Table> t, data->childs) {
|
||||||
if(data->table)
|
if (data->table)
|
||||||
t->setParentTable(data->table,
|
t->setParentTable(data->table,
|
||||||
masterModel,
|
masterModel,
|
||||||
db->model().tableByClassName(t->metaObject()->className()));
|
db->model().tableByClassName(t->metaObject()->className()));
|
||||||
|
|
||||||
if(t->status() == Table::Added
|
if (t->status() == Table::Added
|
||||||
|| t->status() == Table::Modified
|
|| t->status() == Table::Modified
|
||||||
|| t->status() == Table::Deleted){
|
|| t->status() == Table::Deleted) {
|
||||||
rowsAffected += t->save(db);
|
rowsAffected += t->save(db);
|
||||||
if(cleanUp)
|
if (cleanUp)
|
||||||
#ifdef NUT_SHARED_POINTER
|
#ifdef NUT_SHARED_POINTER
|
||||||
remove(t);
|
remove(t);
|
||||||
#else
|
#else
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@ void BenchmarkTest::initTestCase()
|
||||||
|
|
||||||
void BenchmarkTest::insert1kPost()
|
void BenchmarkTest::insert1kPost()
|
||||||
{
|
{
|
||||||
QTime t;
|
QElapsedTimer t;
|
||||||
t.start();
|
t.start();
|
||||||
|
|
||||||
for (int i = 0; i < 100; ++i) {
|
for (int i = 0; i < 100; ++i) {
|
||||||
|
|
@ -52,7 +52,7 @@ void BenchmarkTest::insert1kPost()
|
||||||
db.posts()->append(newPost);
|
db.posts()->append(newPost);
|
||||||
}
|
}
|
||||||
db.saveChanges();
|
db.saveChanges();
|
||||||
qDebug("1k post inserted in %d ms", t.elapsed());
|
qDebug("1k post inserted in %lld ms", t.elapsed());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue