用的是mysql数据库,联接数据库没有问题,程序中我设置了个定时器,让它定时查询数据库,然后将结果放在数组中.
.h 中我定义了 int a[k], in k=0
.cpp 中 的部分代码:
QTimer *timer_query = new QTimer(this);
connect(timer_query, SIGNAL(timeout()), this, SLOT(query_qianji()));
timer_query->start(10000);
query_qianji()) 的实现如下:
void lishiquxiandialog::query_qianji()
{
QSqlQuery query_Propower;
query_Propower.exec("select ID,ch1,ch2,ch3,ch4,ch5,ch6,ch7,ch8,ch9,ch10,ch11,ch12,ch13,ch14,ch15,ch16,ch17,ch18,ch19,ch20 from Propower where ID=(select MAX(ID) from Propower )");
//查询表 Propower中ID值最大的行
a[k]=query_Propower.value(0).toInt();
k++;
}
编译没有问题,程序可以运行,但在运行过程中每隔一段时间出现下面的问题:
QSqlQuery::value: not positioned on a valid record
估计是query_qianji()实现有问题,请教高手如何解决呢?