Форум: "Базы";
Текущий архив: 2003.01.16;
Скачать: [xml.tar.bz2];
ВнизЖучок?? Найти похожие ветки
← →
Карелин Артем (2002-12-23 15:25) [0]В хранимой процедуре делаю запрос типа:
Select distin field1,field2,field3 where //1-3 усливия типа field100=:Param200// and Field1 starting with :param90 into ....
Передаю туда пустую строку.("")
Если поле Field1 не индексировано, то все ок, т.е. выводит все записи. Если индексировано, то датасет пустой.
Где в моем ДНК ошибка?
P.S. Анализировать строку на пустоту неохота - в процедуре уже несколько ветвлений.
← →
Delirium^.Tremens (2002-12-23 15:30) [1]Это не пустая строка, а строка нулевой длины. Пустая строка - это (IS NULL). Еще один вариант?
← →
Карелин Артем (2002-12-23 15:32) [2]Один хрен if (param90="" or param90 is null)
← →
Prooksius (2002-12-23 15:34) [3]2 Карелин Артем © (23.12.02 15:32)
Нет не один.
← →
Delirium^.Tremens (2002-12-23 15:35) [4]Если это строка, то можно рассмотреть LIKE :param||"%"
← →
Prooksius (2002-12-23 15:40) [5]У тебя нет преобразования Field1 = :Param в Field1 is null, если Param - Null.
Насколько я помню, FIBPlus поддерживает это.
← →
Карелин Артем (2002-12-23 15:43) [6]Null передаваться не будет. Дело состоит в том, что без индексов работает, а с индексами нет при param90=""
← →
Delirium^.Tremens (2002-12-23 15:49) [7]
Select distinct field1,field2,field3
where field100=:Param200
and Field1 LIKE :param90||""
...
into ...
← →
Delirium^.Tremens (2002-12-23 15:50) [8]Пардон, конечно же :and Field1 LIKE :param90||"%"
← →
Карелин Артем (2002-12-23 15:51) [9]Вообще-то LIKE :param||" %" - чуть позже обязательно попробую.
← →
Карелин Артем (2002-12-24 10:25) [10]Мда.......
Like работает стабильно, а вот фигня с Starting With не заработала при переустановке FireBird более нового билда.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.01.16;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c