Uso de variables host en sentencias SQL
Utilice variables de host escalares en sentencias de SQL incorporado para representar un único valor. Las variables host son útiles para almacenar datos recuperados o para pasar valores que van a asignar o utilizar las comparaciones.
Cuando utilice variables de host, cumpla los siguientes requisitos:
- Debe declarar el nombre de la variable de host en el programa de host antes de utilizarla. Las variables del host siguen las convenciones de nomenclatura del lenguaje del host.
- Puede utilizar una variable de host para representar un valor de datos, pero no puede utilizarla para representar una tabla, vista o nombre de columna. Puede especificar nombres de tablas, vistas o columnas en tiempo de ejecución mediante SQL dinámico.
- Para utilizar una variable de host en una instrucción SQL, puede especificar cualquier nombre de variable de host válido que esté declarado de acuerdo con las reglas del lenguaje de host.
- Las variables de host que se utilizan en las sentencias SQL deben ir precedidas de dos puntos (:), de modo que Db2 pueda distinguir un nombre de variable de un nombre de columna. Cuando se utilicen variables de host fuera de las sentencias SQL, no se antepondrán dos puntos. PL/I Los programas tienen las siguientes excepciones: Si la instrucción SQL cumple alguna de las siguientes condiciones, no anteponga dos puntos a una variable de host o a una matriz de variables de host en esa instrucción:
- La instrucción SQL está en un programa que también contiene una instrucción DECLARE VARIABLE.
- La variable de host forma parte de una expresión de cadena, pero no es el único componente de la expresión de cadena.
- Para optimizar el rendimiento, asegúrese de que la declaración del lenguaje de programación se corresponda lo máximo posible con el tipo de datos de los datos asociados en la base de datos.
- Para las asignaciones y comparaciones entre una columna de tipo " Db2 " y una variable host de un tipo de datos o longitud diferente, se esperan conversiones.
Si utiliza el lenguaje de programación C ( Db2 precompiler), asegúrese de que los nombres de las variables de host y de las matrices de variables de host sean únicos dentro del programa, incluso si las variables y las matrices de variables se encuentran en bloques, clases, procedimientos, funciones o subrutinas diferentes. Puede calificar los nombres con un nombre de estructura para hacerlos únicos.