有这个代码:
static unsigned CountUpload = 0;
// получаем данные из БД
Query.exec("SELECT * FROM Channels LIMIT 10 OFFSET " + static_cast<QString>(10 * CountUpload));
// увеличиваем счетчик сделанных запросов
CountUpload++;
Query.next();
qDebug() << Query.value(0).toString();
其含义是当请求时,将数据库中接下来的 10 个通道发送到客户端。为了测试,我将第一条记录的第 0 个字段打印到控制台,但它给了我标题中描述的错误。请告诉我,怎么了?谢谢你。
static_cast<QString>(10 * CountUpload)非常奇怪的条目,我会将其更改为QString::number(10 * CountUpload).您也没有检查请求是否成功,很可能是对数据库的请求被证明是错误的并且响应结果是不成功的,因此,在访问响应数据时,您会遇到错误
看一下方法的描述,每一个都返回一个执行成功的布尔指示:
如果查询不成功,则调用QSqlError QSqlQuery::lastError() const获取错误文本