frADOQuery. Запрос из хранимой процедуры
В отчете сделал форму диалога, на нее положил 3 frADOQuer-я с коннектом к MS SQL Server на форме приложения. Все они вида "exec stored_proc_name :param1, :param2, ...". Два работают нормально, один не хочет: - "commandtext does not return a resul set". По большому счету разница между ними вот в чем:
Структура работающих Quer-ей:
create table #t1(...)
заполнение таблицы
select ... from #t1
drop #t1
Структура Quer-я, который работать не хочет:
create table #t1(...)
заполнение таблицы
create table #t2(...)
insert #t2 ... select ... from #t1
другие дела...
drop #t1
select ... from #t2
drop #t2
Зачем такой изврат, лучше не спрашивайте, надо! Сами знаете как бывает.
Нерабочий Query пашет, если в параметрах прописываю константы. Но как только константы заменю на ":param_name", выдает ошибку. В Query.Params после правки текста SQL заглядывал, параметры выставлял, знаю, что иногда слетают.
Может есть какие мысли?
Структура работающих Quer-ей:
create table #t1(...)
заполнение таблицы
select ... from #t1
drop #t1
Структура Quer-я, который работать не хочет:
create table #t1(...)
заполнение таблицы
create table #t2(...)
insert #t2 ... select ... from #t1
другие дела...
drop #t1
select ... from #t2
drop #t2
Зачем такой изврат, лучше не спрашивайте, надо! Сами знаете как бывает.
Нерабочий Query пашет, если в параметрах прописываю константы. Но как только константы заменю на ":param_name", выдает ошибку. В Query.Params после правки текста SQL заглядывал, параметры выставлял, знаю, что иногда слетают.
Может есть какие мысли?
Комментарии
Когда в параметрах я выставлял константу, проверка проходила, процедура отрабатывала до конца и возвращала RowSet из которого GetFieldNames и извлекал имена полей. Когда же я константу заменял на именованный параметр, то на этапе вызова GetFieldNames этот параметр давал 0 или NULL, х.з. Проверка не проходила и процедура возвращала пустоту, о чем и свидетельствовала ошибка.