Russian Qt Forum

Qt => Базы данных => Тема начата: VozaMFC от Август 04, 2011, 16:03



Название: Возврат набора записей из процедуры MySQL
Отправлено: VozaMFC от Август 04, 2011, 16:03
Добрый день!
При портировании базы(MSSQL) на (MYSQL) выяснились некоторый особенности
работы из базой MySQL, а именно
на MSSQL была функция которая принимала параметры и возвращала набор записей, все работало.
Начал создавать её аналог на MySQL, там вроде в теле процедуры помещаешь запрос:
Код:
CREATE PROCEDURE showMan() select * from Man;
Создавал в консоле MySQL.И создалась успешно.
При вводе запроса в консоле: "call showMan;"
выводит там результат в виде таблицы как и надо.
Пытаюсь вызвать тот же запрос в приложении на Qt, выборку не производит, в консоле приложения
информирует так: "QMYSQLResult::cleanup: unable to free statement handle".
(В чем дело?)
Если использовать в приложении прямой запрос в виде "select * from Man;"  то все работает и выводит...

Вопрос в том так можно получать выборку на MySQL из процедуры/фунции, если да то как правильно обрабатывать, может кто знает.



Название: Re: Возврат набора записей из процедуры MySQL
Отправлено: Странник от Август 04, 2011, 16:44
c MySQL на Qt давно уже не работал, честно говоря. попробуй:
Цитировать
QSqlQuery sqlQuery;
sqlQuery.setForwardOnly(true);
sqlQuery.exec("CALL showMan()");