请教大家:
这是原来qt5上正常的程序:
QString sql = " SELECT * FROM " + ysab3 + " order by id DESC limit 198";
QSqlQuery query(db);
query.exec(sql);
debug提示:引发了异常: 读取访问权限冲突。field.**myField** 是 nullptr。
错误位置:qsql_mysql.cpp
void QMYSQLResult::cleanup()
for (const auto &field : qAsConst(d->fields)) {
if (qIsTimeOrDate(field.myField->type))
reinterpret_cast<MYSQL_TIME *>(field.outField)->~MYSQL_TIME();
delete[] field.outField;
}
还有db.tables()也一样会报错,也是同样位置。
还有query.clear;delete query;等语句都会出同样的错误。
1 请先检查数据库配置是否正常
2 用其他工具测试数据库是否可以正常连接
3 方便的话把保存的文本信息发出来 我这边看一下
Qt5迁移到Qt6的一些坑
https://blog.csdn.net/yuanya/article/details/122155040