#include #include int main(int argc, char* argv[]) { QCoreApplication a(argc, argv); auto db = QSqlDatabase::addDatabase("QPSQL"); db.setHostName("192.168.178.64"); db.setDatabaseName("testdb"); db.setUserName("testuser"); db.setPassword("testuser"); qDebug() << db.open(); qDebug() << db.lastError(); auto query = QSqlQuery(db); query.exec("DROP TABLE IF EXISTS test"); query.exec("create table test(id serial, tmtz timestamptz, tm timestamp)"); if (!query.exec("insert into test (tmtz, tm) values (now(), now())")) qDebug() << query.lastError(); if (!query.prepare("insert into test (tmtz, tm) values (:tmtz, :tm)")) qDebug() << query.lastError(); query.bindValue(":tmtz", QDateTime::currentDateTime().toUTC()); query.bindValue(":tm", QDateTime::currentDateTime().toUTC()); if (!query.exec()) qDebug() << query.lastError(); query.bindValue(":tmtz", QDateTime::currentDateTime().toLocalTime()); query.bindValue(":tm", QDateTime::currentDateTime().toLocalTime()); query.exec(); if (!query.exec()) qDebug() << query.lastError(); if (!query.exec("select * from test")) qDebug() << query.lastError(); qDebug() << QDateTime::currentDateTime() << QDateTime::currentDateTime().toLocalTime() << QDateTime::currentDateTime().toUTC(); while (query.next()) { auto dtTm = query.value("tm").toDateTime(); auto dtTmTz = query.value("tmtz").toDateTime(); qDebug() << query.value("id") << dtTm << "," << dtTm.toUTC() << "," << dtTmTz << "," << dtTmTz.toUTC(); } return 0; }