qWarning() << tagQuery.lastError().number();
qWarning() << tagQuery.lastError().driverText();
- qWarning() << tagQuery.lastError().text();
+ qWarning() << tagQuery.lastError().databaseText();
- if (ret) {
+ if (ret || (tagQuery.lastError().number() == 19)) {
int tagId = tagQuery.lastInsertId().toInt();
QSqlQuery userTagQuery;
ret = userTagQuery.exec(QString("INSERT INTO usertag VALUES(NULL, '%1', '%2')")
- .arg(tagId).arg(userId));
- qWarning() << userTagQuery.lastError().number();
- qWarning() << userTagQuery.lastError().driverText();
- qWarning() << userTagQuery.lastError().text();
+ .arg(userId).arg(tagId));
}
}
- qDebug() << ret;
return ret;
}
QSqlQuery query;
created = query.exec("CREATE TABLE IF NOT EXISTS tag ("
"id INTEGER PRIMARY KEY,"
- "name VARCHAR(30)"
+ "name VARCHAR(30) UNIQUE"
")");
-
- qWarning() << query.lastError().text();
}
- qDebug() << created;
return created;
}
"tagid INTEGER,"
"FOREIGN KEY(tagid) REFERENCES tag(id)"
")");
- qWarning() << query.lastError().text();
}
- qDebug() << created;
return created;
}
+QStringList Database::getInterestingPeople(int userId)
+{
+ qDebug() << __PRETTY_FUNCTION__;
+
+ QStringList interestingPeopleId;
+
+ QSqlQuery query(QString("SELECT DISTINCT ut.userid FROM usertag ut WHERE ut.id IN "
+ "(SELECT ut.id FROM usertag ut WHERE userid = '%1')").arg(userId));
+
+ while (query.next())
+ interestingPeopleId.append(query.value(0).toString());
+
+ return interestingPeopleId;
+}
+
QStringList Database::getTags(int userId)
{
qDebug() << __PRETTY_FUNCTION__;
QStringList tags;
- QSqlQuery query(QString("SELECT * from usertag WHERE userid = '%1'").arg(userId));
- qWarning() << query.lastError().text();
- if (query.next()) {
- qWarning() << query.value(0).toString();
- qWarning() << query.value(1).toString();
- qWarning() << query.value(2).toString();
- }
+ QSqlQuery query(QString("SELECT t.name from usertag ut, tag t WHERE userid = '%1' AND "
+ "ut.tagid = t.id").arg(userId));
+
+ while (query.next())
+ tags.append(query.value(0).toString());
return tags;
}
bool ret = false;
-// QSqlQuery query(QString("SELECT * from tag"))
+ QSqlQuery tagQuery(QString("SELECT * from tag"));
+ qWarning() << tagQuery.lastError().text();
+ qWarning() << "id" << "name";
+ while (tagQuery.next()) {
+ qWarning() << tagQuery.value(0).toString() << tagQuery.value(1).toString();
+ }
+
+ QSqlQuery userTagQuery(QString("SELECT * from usertag"));
+ qWarning() << userTagQuery.lastError().text();
+ qWarning() << "id" << "userid" << "tagid";
+ while (userTagQuery.next()) {
+ qWarning() << userTagQuery.value(0).toString() <<
+ userTagQuery.value(1).toString() << userTagQuery.value(2).toString();
+ }
}