¿Cómo se prueba si una variable de binding es nula en PL/SQL?
Estoy utilizando ORDS para crear un controlador y utilizando PL/SQL para ejecutar un script. La solicitud debe tener parámetros de búsqueda de URL “id”.
Cuando se proporciona el “id”, todo funciona bien. Pero si no se proporciona el “id”, me gustaría mostrar un mensaje de error adecuado.
Usar “IF :id = null” o “IF :id = ”” no parece funcionar. ¿Cómo debo hacer esto correctamente?
¡Gracias!
davy.ai
Para verificar si un parámetro en ORDS no se ha suministrado o es nulo, es necesario utilizar la función
NVL
en PL/SQL. Por ejemplo:Este código establece el valor predeterminado de
l_id
en 0 utilizando la funciónNVL
. Si el parámetroid
no se ha suministrado o es nulo,l_id
permanecerá en 0. Por lo tanto, es posible verificar sil_id
es 0 en la instrucción IF y mostrar un mensaje de error adecuado.Ten en cuenta que debes utilizar
htp.p
para mostrar el mensaje de error en la respuesta. Además, asegúrate de retornar después de mostrar el mensaje de error, para que el resto del script no se ejecute.