Mercurial > hg > syntilista
changeset 44:8fb2230fe860
Do not attempt to create the SQL tables if they already exist.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Thu, 06 Apr 2017 15:13:30 +0300 |
parents | 179e7df4dc80 |
children | acc235907fab |
files | main.cpp |
diffstat | 1 files changed, 22 insertions(+), 16 deletions(-) [+] |
line wrap: on
line diff
--- a/main.cpp Thu Apr 06 14:52:57 2017 +0300 +++ b/main.cpp Thu Apr 06 15:13:30 2017 +0300 @@ -83,7 +83,7 @@ // -// +// Get PersonInfo record from SQL database for specified persn ID # // bool getPersonInfo(qint64 id, PersonInfo &info) { @@ -169,24 +169,30 @@ } QSqlQuery query; - query.exec(QStringLiteral( - "CREATE TABLE people (id INTEGER PRIMARY KEY, " - "first_name VARCHAR(128) NOT NULL, " - "last_name VARCHAR(128) NOT NULL, " - "extra_info VARCHAR(2048), " - "added DATETIME NOT NULL, " - "updated DATETIME NOT NULL)")); + if (!db.tables().contains("people")) + { + query.exec(QStringLiteral( + "CREATE TABLE people (id INTEGER PRIMARY KEY, " + "first_name VARCHAR(128) NOT NULL, " + "last_name VARCHAR(128) NOT NULL, " + "extra_info VARCHAR(2048), " + "added DATETIME NOT NULL, " + "updated DATETIME NOT NULL)")); - checkAndReportSQLError("CREATE TABLE people", query.lastError()); + checkAndReportSQLError("CREATE TABLE people", query.lastError()); + } - query.exec(QStringLiteral( - "CREATE TABLE transactions (" - "id INTEGER PRIMARY KEY, " - "person INT NOT NULL, " - "value REAL, " - "added DATETIME NOT NULL)")); + if (!db.tables().contains("transactions")) + { + query.exec(QStringLiteral( + "CREATE TABLE transactions (" + "id INTEGER PRIMARY KEY, " + "person INT NOT NULL, " + "value REAL, " + "added DATETIME NOT NULL)")); - checkAndReportSQLError("CREATE TABLE transactions", query.lastError()); + checkAndReportSQLError("CREATE TABLE transactions", query.lastError()); + } SyntilistaMainWindow swin; swin.show();