PLSQL Developer 16 release bug with IN (:param)

TomOzi

Member²
PLSQL Developer 16 release bug with IN (:param)
When i tried to use IN list with &param all is ok, but with :param throw error ORA-01722 or not show any rows

1.png
2.png
 
An Oracle bind variable cannot represent a list of values. It can only represent one value in a list. For example:

WHERE t.NUM_ROWS in (:r1, :r2, :r3)

A substitution variable does not have such a limitation, because the variable is substituted in the SQL text.
 
Unobvious behavior: in one of the queries, not a single line of result was returned to me, and there was no error until I changed the binding variable to &.
Could you throw an explicit error or warning in such cases?
 
This is unfortunately standard Oracle behavior. You would get the exact same results when using a variable in a query in a PL/SQL program unit.

We'll consider implementing a warning when using IN with a bind variable.
 
Back
Top