SQL Anywhere数据库中的QDateTime插入和检索

问题描述 投票:1回答:1

我正在尝试在SQL Anywhere 16数据库的表中存储和访问日期和时间。

在Qt中应该使用哪种数据类型,以便它可以用于我的所有Qt业务逻辑和UI。我想使用QDateTime,那么什么是有助于在Query中插入日期时间并从Query结果转换回datetime的函数。

qt sqlanywhere
1个回答
0
投票

是的,QDateTime与QtSql非常兼容,非常容易使用。以下是一些插入和选择的代码:

// SELECT
QSqlQuery querySelect;
if (!querySelect.exec("SELECT datetime FROM author"))
{
    //handle error        
}
while (querySelect.next()) 
{
    QDateTime dateTime = querySelect.value(0).toDateTime();
    doSomething(dateTime);
}

// INSERT
QSqlQuery queryInsert;
if (!queryInsert.prepare("INSERT INTO author (datetime) VALUES (:dateTime)"))
{
    //handle error
}
QDateTime dateTime = QDateTime::currentDateTime();
queryInsert.bindValue(":dateTime", dateTime);

if (!queryInsert.exec())
{
    //handle error        
}

确保SQL列的类型为DATETIMETIMESTAMP,以便可以正确转换该值。

在此处阅读有关Qt支持的数据库系统的数据类型的更多信息:https://doc.qt.io/qt-5/sql-types.html

© www.soinside.com 2019 - 2024. All rights reserved.