Доброго дня всем.Есть приложение, работает с базой (MS SQL 2005) через QSqlDatabase.С простым SQL все отлично. Таблицы просматриваются, обновляются, и.т.д.Есть процедура на Transact SQL. Имеет пару входных значений и пару выходныхКод:ALTER PROCEDURE [dbo].[GetEndTime]@TermName VARCHAR(30), @Ccy INT,@EndDate DATETIME OUTPUT, @Message VARCHAR(255) OUTPUTС входными параметрами все отлично, а вот с выходными - беда.Пытаюсь забиндить значение Message к запросу как QSql::InOut (просто QSql::Out не работает вообще)Код:query.prepare("execute GetEndTime :termname, :ccy, :enddate, :mes");// ...query.bindValue(":mes", "", QSql::InOut);query.exec();QString s = query.boundValue(":mes").toString(); Теперь в s пустая строка, хотя ХП возвращает значение.если сделать так:Код:query.bindValue(":mes", QVariant(QVariant::String), QSql::InOut);результат тот же.А теперь внимание! Если сделать так:Код:query.bindValue(":mes", "string len = 15", QSql::InOut);то после exec(); получаю обрубок из строки, длиною 14 символов.Что делать? как правильно биндить переменные OUTPUT.Может кто сталкивался уже...
|