Błąd procedury składowanej

0

Witam
Mam problem z wykorzystaniem procedury składowanej w innym zapytaniu na Firebirdzie. Aby uprościć problem, przedstawię prostą procedurę

create procedure StrToInt (zm varchar(30))
returns (result integer)
as begin
result = cast(zm as integer);
suspend;
end

a następnie podczas wykonywania zapytania

select 'OK' from dual
where (select * from StrToInt('2'))
between (select * from StrToInt('1'))
and (select * from StrToInt('5'))

pojawia się komunikat z błędem: Unknown user name or password. Unsupported field type specified in BETWEEN predicate.

Zapytanie poniższe wykonuje się prawidłowo

select 'OK' from dual
where 2 between (select * from StrToInt('1'))
and (select * from StrToInt('5')).

Czy ktoś wie w czym jest problem i jak go rozwiązać? Niestety moje zapytania przed BETWEEN również zawierają procedury składowane. Bardzo proszę o pomoc.

Pozdrawiam

0

Jaki to ma związek z Delphi?!

0

Problem jest tego typu, że powinieneś mieć FUNKCJĘ, a nie PROCEDURĘ. Tylko wtedy będziesz mógł wynik brać do BETWEEN.

1 użytkowników online, w tym zalogowanych: 0, gości: 1