Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.20;
Скачать: CL | DM;

Вниз

Можно ли в условии запроса использовать хранимую процедуру   Найти похожие ветки 

 
Sour   (2005-02-17 09:18) [0]

Хочу выполнить такой запрос:
select * from table1 where field1 = GetSomeThing()

Использую (Interbase 7.0 и FireBird 1.5)


 
Johnmen ©   (2005-02-17 09:20) [1]

>Хочу выполнить

Хочешь - выполни. Будут вопросы - приходи.


 
Sour   (2005-02-17 09:38) [2]

Sorry за бредовый вопрос.

Дело в том что Firbird ругался на известное имя функции.

Совсем из головы выпало, сделал так:
select * from table1 where field1 = :GetSomeThing,
где GetSomeThing() - хранимая процедура, возвращающая единственное значение.

Но теперь столкнулся еще с одной проблемой. Надо результат функции преобразовать к строке. Переписал запрос так:

select * from table1 where field2 = cast(:GetSomeThing as varchar(50))

Теперь ругается:
"An error was found in the application program input parameters for the SQL statement.
Dynamic SQL Error.
SQL error code = -804.
Data type unknown."

Хотя GetSomeThing возвращает integer.
Использую (Interbase 7.0 и FireBird 1.5)


 
Johnmen ©   (2005-02-17 09:42) [3]

Таким значком : обозначаются параметры в параметрическом запросе.
О чем тебе и было сообщено...


 
Sour   (2005-02-17 09:56) [4]

Че то я совсем гоню.

Выполняю запрос:
select * from table1 where field2 = GetSomeThing()

Возникает ошибка:
"An error was found in the application program input parameters for the SQL statement.
Dynamic SQL Error.
SQL error code = -804.
Function unknown.
GetSomeThing."

Так как, блин, правильно написать этот запрос?


 
msguns ©   (2005-02-17 10:11) [5]

select * from table1
where field1 in
 (Select <имя_поля_ХП> GetSomeThing(<список параметров>))


 
Sour   (2005-02-17 10:22) [6]

а если мне необходим такой запрос:
select * from table1 where filed2 like "%," || GetSomeThing() || ",%" ??


 
Sour   (2005-02-17 10:25) [7]

Заведомо известно, что GetSomeThing() возвращет только одно значение, а не набор


 
Sergey13 ©   (2005-02-17 10:29) [8]

2[7] Sour   (17.02.05 10:25)
А входные параметры есть?


 
Johnmen ©   (2005-02-17 10:30) [9]

SELECT YourSingleOutParam FROM GetSomeThing()
И учи матчасть перед задаванием вопросов.


 
msguns ©   (2005-02-17 10:31) [10]

>Sour   (17.02.05 10:22) [6]

ИМХО, так нельзя. А вот написать ХП, содержащую этот запрос, вызывающую GetSomeThing и использующую возвращаемое ею значение как значене переменной в выражении like, можно.
С клиента, есно, выполнять новую процедуру


 
Sour   (2005-02-17 10:35) [11]

>Sergey13
Входных парметров нет



Страницы: 1 вся ветка

Текущий архив: 2005.03.20;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.052 c
14-1109318878
Voffka
2005-02-25 11:07
2005.03.20
Как прочитать картинку?


4-1107699954
Agent-Smith
2005-02-06 17:25
2005.03.20
Драйвер PC/SC


6-1105461796
ROMBLLER
2005-01-11 19:43
2005.03.20
как очистить кеш определённой страници в TWebBrowser


14-1109225061
КаПиБаРа
2005-02-24 09:04
2005.03.20
Опрос - Клавиатура и грязные лапки :)


9-1101396790
Вась-Вась
2004-11-25 18:33
2005.03.20
Товарищи! Поможите с DirectDraw!