QSqlQueryModel中的无限

时间:2014-09-19 14:32:52

标签: qt postgresql

我使用QSqlQueryModel来查询postgresql数据库,我发现使用Infinity获得的数据库中的所有-Infinitymodel->data(index, Qt::DisplayRole)值(双精度)都是{ {1}}。我的Qt版本是4.8.3。我怎样才能在我的C ++代码中正确获取inf / -inf值。

1 个答案:

答案 0 :(得分:1)

您可能希望在选择查询中检查特殊值,如下所示:

QSqlQuery q("select case field1 when 'Infinity' then '+INF' when '-Infinity' then '-INF' else cast(field1 as varchar(12)) end from table1");
model->setQuery(q);
model->select();

请注意,我还必须将双精度转换为varchar。