2014-09-19 4 views
1

Я использую QSqlQueryModel запрос к базе данных PostgreSQL, я обнаружил, что все Infinity и -Infinity значения (двойная точность) в базе данных я получаю с помощью model->data(index, Qt::DisplayRole)QVariant(double, 0) это. Моя версия Qt - 4.8.3. Как я могу правильно получить значение inf/-inf в моем коде на C++.Бесконечности в QSqlQueryModel

ответ

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, а также.

Смежные вопросы