Russian Qt Forum

Qt => Базы данных => Тема начата: TaIRou от Июль 29, 2012, 23:55



Название: создание пустого (NULL) QSqlQuery
Отправлено: TaIRou от Июль 29, 2012, 23:55
Есть возможность использовать следующий конструктор QSqlQuery (QSqlResult * result)
В стандартной реализации, если передать в качестве указателя 0, будет создан объект QSqlNullResult или что-то похожее по написанию.
Так вот, мне необходимо в программе узнать создан ли QSqlQuery c 0, или же он создан с валидным QSqlResult.


Название: Re: создание пустого (NULL) QSqlQuery
Отправлено: andrew.k от Июль 30, 2012, 01:43
Есть возможность использовать следующий конструктор QSqlQuery (QSqlResult * result)
В стандартной реализации, если передать в качестве указателя 0, будет создан объект QSqlNullResult или что-то похожее по написанию.
Так вот, мне необходимо в программе узнать создан ли QSqlQuery c 0, или же он создан с валидным QSqlResult.
Ну так узнавай.
Код
C++ (Qt)
const QSqlResult * QSqlQuery::result () const
Returns the result associated with the query.


Название: Re: создание пустого (NULL) QSqlQuery
Отправлено: TaIRou от Июль 30, 2012, 17:46
У меня основной затык в том, что функция указанная выше, никогда 0 не вернет.

И единственное решение в этом случае я вижу лишь в том, чтобы для проверки создавать дополнительный QSqlQuery testQuery(0). и сравнивать query.result() и testQuery.result(). Другое дело насколько это правильно и есть ли более дешевый способ.


Название: Re: создание пустого (NULL) QSqlQuery
Отправлено: andrew.k от Июль 30, 2012, 20:13
У меня основной затык в том, что функция указанная выше, никогда 0 не вернет.

И единственное решение в этом случае я вижу лишь в том, чтобы для проверки создавать дополнительный QSqlQuery testQuery(0). и сравнивать query.result() и testQuery.result(). Другое дело насколько это правильно и есть ли более дешевый способ.
что-то ты не с той стороны заходишь, кажется.
Напиши, для чего тебе это.