04 декабря 2010

Oracle, qt, out параметры

Путем некоторого количества грубой силы я добился от оракла выходных параметров. Итак, оказывается, чтобы это эта база данных вернула нам некоторый параметр, в моем случае это выглядит так update test set name='michael' returning id, name into :id, :name, мы должны заранее выделить место под возвращаемые переменные. Вот код для Qt, показывающий выше сказанное:
QSqlQuery update;
update.prepare("update test set name='michael' returning id, name into :id, :name");
update.bindValue("id", QString(1024, QChar()), QSql::Out);
update.bindValue("name", QString(1024, QChar()), QSql::Out);
update.exec();
int id = update.boundValues().value("id").toInt();
QString name = update.boundValues().value("name").toString();

Комментариев нет:

Отправить комментарий