Added marking

This commit is contained in:
2016-07-31 14:34:58 +02:00
parent 3f226eb952
commit 941119d174
4 changed files with 54 additions and 7 deletions
+14 -4
View File
@@ -23,7 +23,7 @@ bool Database::init()
m_database.setDatabaseName(dir.absoluteFilePath("database.db"));
if(m_database.open())
{
m_database.exec("CREATE TABLE IF NOT EXISTS files (id INTEGER PRIMARY KEY AUTOINCREMENT, file VARCHAR(255));");
m_database.exec("CREATE TABLE IF NOT EXISTS files (id INTEGER PRIMARY KEY AUTOINCREMENT, file VARCHAR(255) UNIQUE);");
QSqlError error = m_database.lastError();
if(error.type() == QSqlError::NoError)
@@ -31,7 +31,9 @@ bool Database::init()
m_markQuery = QSqlQuery(m_database);
m_markQuery.prepare("INSERT INTO files (file) VALUES (?)");
m_unmarkQuery = QSqlQuery(m_database);
m_unmarkQuery.prepare("DELETE FROM files WHERE file = '?'");
m_unmarkQuery.prepare("DELETE FROM files WHERE file = (?)");
m_isMarkedQuery = QSqlQuery(m_database);
m_isMarkedQuery.prepare("SELECT * FROM files WHERE file = (:name)");
return true;
}
@@ -41,20 +43,28 @@ bool Database::init()
return false;
}
bool Database::mark(QString &filename)
bool Database::mark(const QString &filename)
{
m_markQuery.bindValue(0, filename);
m_markQuery.exec();
return checkError();
}
bool Database::unmark(QString &filename)
bool Database::unmark(const QString &filename)
{
m_unmarkQuery.bindValue(0, filename);
m_unmarkQuery.exec();
return checkError();
}
bool Database::isMarked(const QString &filename)
{
m_isMarkedQuery.bindValue(":name", filename);
m_isMarkedQuery.exec();
checkError();
return m_isMarkedQuery.next();
}
bool Database::checkError()
{
QSqlError error = m_database.lastError();