# HG changeset patch # User Matti Hamalainen # Date 1491480810 -10800 # Node ID 8fb2230fe860acbb550ba9a7806bd70b094526bc # Parent 179e7df4dc80d82f6d9ff57e11c806c1f026d579 Do not attempt to create the SQL tables if they already exist. diff -r 179e7df4dc80 -r 8fb2230fe860 main.cpp --- 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();