Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: COM/DCOM/ActiveX/ATL/CORBA > SQL запрос через ADORecordset


Автор: Kolia 21.3.2008, 14:00
Архитектура такая:
Client -> Attunity -> DB

DB - база данных, не ORACLE, MSSQL... Какая-то дико старинная.
Attunity дает посредством SQL общаться с DB.

Запускаю в Attunity SQL клиенте скрипт:
Код

select * from get_values('TYPE_A') where value_a not in (select value_a from get_values('TYPE_B'))


Все идет на ура, получаю то, что нужно.


Теперь тот же самый скрипт запускаю в разрабатываемой программе, и получаю фигу. Результат - не возвращено ни одной строки. коннект и все такое имеетца, так как такой SELECT проходит хорошо:
Код

select * from get_values('TYPE_B')


Такое ощущение, что эта Attunity не может переварить 
Код

... not in (select value_a from get_values('TYPE_B')

Что-то ей мешает.

Запрос
Код

select * from get_values('TYPE_B') where value_a not in ('valA', 'valB', 'valC', 'valD')

работает без проблем.

То ли баг Attunity, то ли фиг знает. Может кто с подобным встречался?

P.S. А такой запрос вообще фигню возвращает, хотя запустив его в Attunity SQL клиенте, результат получается хороший
Код

select * from get_values('TYPE_A') where '-' || rtrim(value_a) not in (select '-' || rtrim(value_a) from get_values('TYPE_B')) order by value_a

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)