从SQLite数据库表中获取int值

时间:2015-09-11 10:31:20

标签: c++ sqlite qt5

我正在尝试从表格中的列中获取值。我知道查询只返回一个结果,我需要一个int值......

QSqlQuery qry;
qry.prepare("select Position from workers where Username='"+username+"'and Password='"+password+"'");
qry.exec();
int status = qry.value(0).toInt();

但这不起作用。在我的表中有一个名为Position的字段,它是INTEGER,因此我正在尝试检索它。 同样,我知道这个qry只会有一个结果。

2 个答案:

答案 0 :(得分:1)

在访问结果之前,您需要致电qry.next()

检查返回值以查看您的查询是否返回任何内容。

您应该明确查看http://doc.qt.io/qt-5/qsqlquery.html

上的示例

答案 1 :(得分:1)

您可以尝试这样:

while (qry.next()) 
{
   int status = qry.value(0).toInt();
}