Вниз
Скачать: CL | DM;

IB5.5 и хранимая процедура   Найти похожие ветки 

← →
ManYury ©   (2003-03-25 12:59) [0]

Добрый день/вечер ...
Кто подскажет - почему не правильно работает нижеприведенная процедура :

CREATE PROCEDURE CHECKGERMANYCITY
RETURNS (
CITYFORINSERT CHAR (45))
AS
declare variable CityForCompare char(45);
BEGIN

/* Procedure body */
CityForCompare="B%";
for select EnglishCityName from City where ISOCountry="DE" and
EnglishCityName like :CityForCompare
into :CityForInsert
do
SUSPEND;
end


при таком запросе возвращается null если вместо like :CityForCompare написать like "B%" то все нормально ...


← →
Карелин Артем ©   (2003-03-25 13:10) [1]

Попробуй
CityForCompare="b"
EnglishCityName starting with :CityForCompare
В Firebird такое работает.


← →
manYury ©   (2003-03-25 13:19) [2]

Это не выход - т.к. необходимо использовать имено like (в процедуре идет сравнение) ...


← →
Johnmen ©   (2003-03-25 13:32) [3]

А так ?
like """||:CityForCompare||"""



← →
ManYury ©   (2003-03-25 14:17) [4]

To Johnmen результат тот же ...
И еще один вопрос - если результат null то выполняется ли код, который идет за do т.е. можно ли написать
do
begin
if (CityForInsert is null) then (что-то делаем)
end

- тоже что-то не хочет выполняться ...
P.S. если первый код прогнать в отладчике IBManager то все выполняется как надо, если просто выполнить то null -((


← →
Romkin ©   (2003-03-25 15:09) [5]

declare variable CityForCompare VARchar(45);
char дополняется пробелами


← →
ManYury ©   (2003-03-25 15:33) [6]

Спасибо - помогло ...



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
3-43996
Andrey007
2003-03-24 16:57
2003.04.14
Как уменьшить время при заполнении таблиц?


8-44285
Kuljok
2003-01-13 02:04
2003.04.14
Текущий уровень звука


14-44342
[NIKEL]
2003-03-30 23:16
2003.04.14
Народ, а ну давайте делиться интересными ссылками :]


1-44215
бред
2003-04-01 17:43
2003.04.14
JPEG > 1000 пикселей


14-44404
Дмитрий К.К.
2003-03-28 13:16
2003.04.14
Именинники 28 марта




   Наверх