Название: Биндинг переменных в Oracle Отправлено: akaMDA от Март 13, 2013, 09:49 SQL запрос
Код: INSERT INTO A(str) VALUES (:ba) RETURNING A_ID INTO :bId добавляю бинды Код: bindValue(":ba", "AAAAAAAAAAA"); При exec() ошибка - невозможно вставить NULL в str. Если использовать только 1 переменную (:ba или :bId), то все работает. Что я не так делаю? Название: Re: Биндинг переменных в Oracle Отправлено: dio от Март 13, 2013, 10:57 Попробуйте так:
Код: bindValue(":ba", "AAAAAAAAAAA"); Название: Re: Биндинг переменных в Oracle Отправлено: akaMDA от Март 13, 2013, 11:28 Пробовал. Но в результате в :bId оказывается всегда 2, а не настоящий id. Сейчас вышел из положения 2 запросами INSERT и UPDATE.
Название: Re: Биндинг переменных в Oracle Отправлено: dio от Март 13, 2013, 14:19 Очень странно. Должно работать правильно.
У Вас значение A_ID формируется триггером? Приведите его код. Ну и на всякий случай какая у Вас версия Qt? У меня 4.7.4. Win. Данный код работает. Название: Re: Биндинг переменных в Oracle Отправлено: akaMDA от Март 14, 2013, 13:42 Значение формитуертся триггером, проблем не возникает. Qt 5.0.1
Название: Re: Биндинг переменных в Oracle Отправлено: twp от Март 15, 2013, 00:24 Пробовал. Но в результате в :bId оказывается всегда 2, а не настоящий id. Сейчас вышел из положения 2 запросами INSERT и UPDATE. Цитата: Assistant QVariant::QVariant ( Type type ) Constructs a null variant of type type. 2 как раз равно QVariant::ULongLong т.е. такой код QVariant(QVariant::ULongLong) создает пустое значение но с типом qlonglong. А вот если сделать так, что будет? Код
|