Subject Re: [firebird-support] Passing a comma separate string to a Procedure
Author firebirddev firebirddev
Thank you Dmitry!  What a graceful to resolve this problem.

Best regards.


2013/11/11 Dmitry Kuzmenko <kdv@...>
 

Hello, firebirddev!

Monday, November 11, 2013, 2:34:01 AM, you wrote:

ff> In the procedure I am using the IN operation, like:

ff> WHERE NAME_LIST in (:I_NAME_LIST);

parameter can contain ony one value.
FB does not have any idea about what you put into the string, and wich
"separator" you will use in it, and so on.

Thus, construct NAME_LIST in (:I_NAME_LIST) will not work, because it
will use contents of :I_NAME_LIST as one value.

Instead, for example, you may pass string
'~12~23~267~675~' where ~ is a delimiter.

So, query will be
Select ...
From Table T
Where :ParamStr Containing '~'||T.ID||'~'

result will show all rows with T.ID equal to 12, 23, 267 and 675.

--
Dmitry Kuzmenko, www.ib-aid.com