2

我有一个查询,它只是根据某些条件获取表的计数,例如:

QSqlQuery query("SELECT COUNT(*) FROM some_table WHERE some_value = :something");
query.bindValue(":something", "something");

我的问题是我如何得到这个结果,显然这是你会使用的地方

query.value(int);
query.value(QString);

但是文档说不应该使用 int 索引一,因为我们不知道索引是什么并且我不能使用字符串一,因为没有字段可以定义为我想要的结果。所以假设我说的是正确的,我怎么能从这个查询中将计数整数值放入一个 int 变量中

干杯

4

2 回答 2

6

为字段计数创建别名。像这样:

QSqlQuery query("SELECT COUNT(*) CNT FROM some_table WHERE some_value = :something");

然后按名称查询CNT

于 2014-09-25T12:46:43.940 回答
-1

你也可以使用:Query.next(); Query.value(0).toInt();

对于此消息: QSqlQuery::value: not定位在有效记录上,您应该这样做:Query.next(); 将指针更改为第一条记录!

于 2018-02-14T21:45:45.163 回答