El asunto gira en que hay que tener cuidado a la hora de poner nombre a las variables que usemos dentro del propio procedimiento. Si estas variables tienen el mismo nombre que algún campo de las tablas de la consulta, el procedimiento puede no ser capaz de realizar la sustitución y por lo tanto no realizar la consulta de forma correcta.
Para empezar debemos tener en cuenta los siguientes datos:
- Un procedimiento no diferencia entre mayúsculas y minúsculas.
- Las reglas de nomenclatura son mas restrictivas en un procedimiento que en un sentencia SQL.
- Los procedimientos resuelven los nombres de forma diferente a como lo hace una sentencia SQL.
Teniendo en cuenta esto, aquí va algunos concejos para evitar este problema.
- Nombrar la variable con un nombre diferente al del campo (lo más lógico).
- Hacer uso de bloques dentro del procedimiento y nominar la variable haciendo referencia al bloque.
- Al utilizar la variable local hacer referencia al procedimiento del que forma parte.
Si queréis algo más de información o ejemplos concretos los podéis seguir en esta página de la documentación oficial.
No hay comentarios:
Publicar un comentario