Cláusula SQL In con cero a muchos parameters

Tengo una consulta SQL parametrizada por un marco interno muy limitado. La consulta se ve así:

Select * from somewhere where name IN (:parameter); 

El código inyectará cero a muchas cadenas en la location especificada por: parámetro. El indicador ": parámetro" solo se puede usar dentro de la cláusula "IN" (por lo tanto, no se puede mover después de la cláusula where para insert condicionalmente la sección 'name IN').

A veces, el usuario establecerá el parámetro en:

'perro gato'

Otras veces, el usuario no pondrá ningún valor en la variable de parámetro: Esto causa un problema ya que la consulta SQL resultante será:

 Select * from somewhere where name IN (); 

Mi código puede detectar el caso en que el parámetro está vacío, pero necesito algo que pueda inyectar en la statement IN, que garantiza que NUNCA coincida con una cadena real.

¿Hay alguna expresión regular de SQL que pueda inyectar que NUNCA coincidiría con ninguna cadena? Algo como%.% O algo …

¡Gracias!

Puedes decir:

 where name in (null) 

Esto nunca coincidirá, ya que nada es igual a null (ni siquiera null ).

null no debe coincidir con nada.

No creo que pueda garantizar que nunca coincidirá con una cadena existente. Lo mejor que podría hacer es manejar el caso en el que la statement no funciona en la database; Sin embargo, sin saber cómo se está ejecutando el guión, no puedo deducir mucho más de allí.

El nombre no puede ser nulo, entonces ¿puedes hacer una cadena vacía?