需求

qt 使用 mysql 的时候,日期时间格式和 QDateTime 互相转换

解决

QDateTime 转 mysql 时间格式

    QDateTime dateTime = QDateTime(QDate(2024, 5, 3), QTime(22, 0, 0));
    QString dateTimeString = dateTime.toString("yyyy-MM-dd HH:mm:ss"); // 转换为 MySQL 理解的格式
    QString insertQuery = "INSERT INTO version (version_no, version_datetime) VALUES (:version_no, :version_datetime)";

    // 执行 SQL 插入语句
//    QSqlQuery query;
    query.prepare(insertQuery);
    query.bindValue(":version_no", 3);
    query.bindValue(":version_datetime", dateTimeString);

mysql 时间格式转 QDateTime

data.time = query.value("analysis_datetime").toDateTime();

参考