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

Вниз

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

 
stud ©   (2004-10-01 13:54) [0]

необходимо реализовать конструкцию вида
select * from table where id in (paramert)
parametr - список значений - 1,2,3,36,25,354
каким образом можно это сделать?
при подставноке такого списка значений "в лоб" ругается


 
Ega23 ©   (2004-10-01 14:06) [1]

СУБД?


 
sniknik ©   (2004-10-01 14:06) [2]

параметра "массив" нет, (вернее есть (если считаь ftArray) но никто его не поддерживает).

вставляй строку в запрос, либо столько параметров сколько значений в массиве, и каждый инициализируй.


 
stud ©   (2004-10-01 14:12) [3]

СУБД - ФБ 1,5
проблема в том, что количество параметров заранее не известно. т.е. юзер выделяет в гриде записи и по выделенному кол-ву строится отчет


 
stud ©   (2004-10-01 14:15) [4]

есть вариант организовать цикл по количеству переданных параметров и соотв. количество раз выполнить запрос.
только как средствами ФБ произвести разбор строки?


 
Sergey13 ©   (2004-10-01 14:24) [5]

Так вроде говорили динамический SQL появился в полторашке. Нет? Нельзя просто строку подставить в запрос?


 
stud ©   (2004-10-01 14:29) [6]

я как-то пробовал не работало.
решил сделать разбор строки. нужен список удф. как выделить подстроку нашел. а есть ли в стандартной поставке удф для работы со строками?


 
sniknik ©   (2004-10-01 15:13) [7]

> я как-то пробовал не работало.
?

у меня встречный вопрос. сколько времени хочеш потратить на решение этой "проблемы"?

просто были перецеденты, даже пустяковые вопросы (как вот этот) оставались нерешонными даже через длительное время, только потому что автор "стеснялся" говорить факты, а отвечал односмысленно ("не работает", "не катит", "ошибка", ...)

p.s. работает! нет смысла в извращениях.


 
stud ©   (2004-10-01 15:31) [8]

не работало - потомучто ругалось на запятые которыми разделялись значения. если в параметре было одно значение - то все нормально.
но нужно извратиться именно с разбором строки. в общем как уже разобрался, но тут засада. продключил функцию sustr при попытке ее использования получаю ошибку:
Invalid token.
invalid request BLR at offset 267.
function SUBSTR is not defined.
module name or entrypoint could not be found.
работаю в ибэксперте
подключаю:
DECLARE EXTERNAL FUNCTION substr
   CSTRING(80), SMALLINT, SMALLINT
   RETURNS CSTRING(80) FREE_IT
   ENTRY_POINT "IB_UDF_substr" MODULE_NAME "ib_udf"
в тоже время есть еще одна функция ранее подключенная strlen при ее использовании ошибок нет


 
sniknik ©   (2004-10-01 15:36) [9]

> не работало - потомучто ругалось на запятые которыми разделялись значения. если в параметре было одно значение - то все нормально.
тебе не в параметр говорили строку вставить а в запрос. или кучу параметров для каждого значения.
ответы читаеш?


 
stud ©   (2004-10-01 15:41) [10]


> тебе не в параметр говорили строку вставить а в запрос

если бы это было возможно давно бы так и сделал. только этот запрос вызывается из хранимой процедуры. с этим все понятно.
подскажите по
> продключил функцию sustr при попытке ее использования получаю
> ошибку:


 
msguns   (2004-10-01 15:44) [11]

>stud ©   (01.10.04 15:41) [10]
>только этот запрос вызывается из хранимой процедуры

И что, этой ХП передается переменное число параметров ?


 
stud ©   (2004-10-01 15:47) [12]

господ!!! прошу объяснить почему функция не работает! проверил библиотеки - все на месте.
с параметрами разобрался



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

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

Наверх




Память: 0.49 MB
Время: 0.028 c
3-1096718489
Denniro
2004-10-02 16:01
2004.10.31
Примеры работы с MS-SQL


4-1095928921
Aleksandr.
2004-09-23 12:42
2004.10.31
Модальные окна ордер путают. Как правильнее сделать,?


3-1096520868
sashuly
2004-09-30 09:07
2004.10.31
Отличаи 6-й и 7-й


4-1096111441
Вопрос
2004-09-25 15:24
2004.10.31
Сервис не может читать параметры из реестра


3-1096970833
GanibalLector
2004-10-05 14:07
2004.10.31
select