Revision d568923d
Von Christian Ehringfeld vor etwa 9 Jahren hinzugefügt
src/database.cpp | ||
---|---|---|
} else {
|
||
rc = this->exec(query);
|
||
}
|
||
qDebug() << "Executed Query:" << query;
|
||
return rc;
|
||
}
|
||
|
||
... | ... | |
bool Database::transaction(QSqlQuery &query) {
|
||
this->database.transaction();
|
||
query.exec();
|
||
this->debugQuery(query);
|
||
if (!this->database.commit()) {
|
||
this->database.rollback();
|
||
return false;
|
||
... | ... | |
for (int var = 0; var < queries.size(); ++var) {
|
||
q = queries.at(var);
|
||
q.exec();
|
||
this->debugQuery(q);
|
||
}
|
||
if (!this->database.commit()) {
|
||
this->database.rollback();
|
||
... | ... | |
return true;
|
||
}
|
||
|
||
bool Database::exec(QString query) {
|
||
bool Database::exec(const QString &query) {
|
||
this->database.transaction();
|
||
QSqlQuery q = QSqlQuery(this->database);
|
||
q.exec(query);
|
||
this->debugQuery(q);
|
||
if (!this->database.commit()) {
|
||
this->database.rollback();
|
||
return false;
|
||
... | ... | |
bool ok = true;
|
||
for (int var = 0; var < queries.size() && ok; ++var) {
|
||
ok = q.exec(queries.at(var));
|
||
this->debugQuery(q);
|
||
if (!ok) {
|
||
break;
|
||
}
|
||
... | ... | |
return ok;
|
||
}
|
||
|
||
bool Database::exec(QSqlQuery query) {
|
||
return query.exec();
|
||
bool Database::exec(QSqlQuery &query) {
|
||
bool ok = query.exec();
|
||
this->debugQuery(query);
|
||
return ok;
|
||
}
|
||
|
||
bool Database::exec(QList<QSqlQuery> queries) {
|
||
... | ... | |
for (int var = 0; var < queries.size() && ok; ++var) {
|
||
q = queries.at(var);
|
||
ok = q.exec();
|
||
this->debugQuery(q);
|
||
if (!ok) {
|
||
break;
|
||
}
|
||
... | ... | |
return ok;
|
||
}
|
||
|
||
void Database::debugQuery(const QSqlQuery &query) const {
|
||
qDebug() << query.executedQuery();
|
||
}
|
||
|
||
bool Database::select(QSqlQuery &query) {
|
||
query.setForwardOnly(true);
|
||
return query.exec();
|
||
bool ok = query.exec();
|
||
this->debugQuery(query);
|
||
return ok;
|
||
}
|
||
|
||
QSqlQuery Database::select(const QString &query) {
|
||
QSqlQuery q = QSqlQuery(this->database);
|
||
q.exec(query);
|
||
this->debugQuery(q);
|
||
return q;
|
||
}
|
||
|
Auch abrufbar als: Unified diff
example compiles, persisting of entities without relations works, added
debug output for queries