El REXX SQLDA

Una SQLDA de REXX consta de un conjunto de variables REXX con una raíz común. El vástago debe ser un nombre de variable REXX que no contenga puntos y sea igual al valor del nombre-descriptor que especifique cuando utilice el SQLDA en una instrucción SQL. Db2 no da soporte a la sentencia INCLUDE SQLDA en REXX.

La siguiente tabla muestra los nombres de las variables en un REXX SQLDA. Los valores de la segunda columna de la tabla son valores que Db2 inserta en el SQLDA cuando se ejecuta la instrucción. Salvo que se indique lo contrario, los valores de la tercera columna de la tabla son valores que la aplicación debe introducir en el SQLDA antes de que se ejecute la instrucción.

Tabla 1. Campos de un REXX SQLDA
Nombre de variable
Uso en DESCRIBE
y PREPARE INTO
Uso en FETCH, OPEN,
EXECUTE y CALL
stem.SQLD
El número de columnas que se describen en el SQLDA. Duplique ese número si aparece USAR AMBOS en la instrucción DESCRIBIR o PREPARAR EN. Contiene un 0 si la cadena de la declaración no es una consulta.

Para DESCRIBE PROCEDURE, el número de conjuntos de resultados devueltos por el procedimiento almacenado. Contiene un 0 si no se devuelve ningún conjunto de resultados.

El número de variables de host que utiliza la instrucción SQL.
Cada SQLDA contiene stem.SQLD de las siguientes variables. Por lo tanto, 1<=n<=stem.SQLD. Hay una ocurrencia de cada variable para cada columna de la tabla de resultados o variable host que se describe por el SQLDA.
stem.n.TIPO_SQL Indica el tipo de datos de la columna o parámetro y si puede contener valores nulos. Para una descripción de los códigos de tipo, consulte los campos SQLTYPE y SQLLEN del SQLDA.

Para un tipo distinto, el tipo de datos en el que se basó el tipo distinto se coloca en este campo. La base SQLVAR no proporciona ninguna indicación de que esto forme parte de la descripción de un tipo distinto.

Indica el tipo de datos de la variable de host y si se proporciona una variable indicadora. Las variables del lenguaje principal para los valores de fecha y hora deben ser variables de serie de caracteres. Para FETCH, un código de tipo de fecha y hora significa una serie de caracteres de longitud fija. Para una descripción de los códigos de tipo, consulte los campos SQLTYPE y SQLLEN del SQLDA.

Inicio del cambioEl tipo de datos de la variable host no puede ser localizador BLOB, localizador CLOB o localizador DBCLOB.fin del cambio

Inicio del cambio.SQLLONGL stem.n.SQLLONGLfin del cambio Inicio del cambioPara una columna LOB, la longitud de la representación de cadena del valor o parámetro.fin del cambio Inicio del cambioPara una variable host que tiene un tipo de datos LOB, el atributo de longitud de la variable host. Para una descripción de los valores admitidos, consulte los campos SQLTYPE y SQLLEN del SQLDA.fin del cambio
Inicio del cambio.SQLLEN stem.n.SQLLENfin del cambio Inicio del cambioPara una columna que no sea DECIMAL, NUMERIC o LOB, el atributo de longitud de la columna o parámetro. Para datos datetime, la longitud de la representación de cadena del valor. Consulte los campos SQLTYPE y SQLLEN del SQLDA para ver una descripción de los valores permitidos. fin del cambio Inicio del cambioPara una variable host que no tiene un tipo de datos decimal o LOB, el atributo de longitud de la variable host. Consulte los campos SQLTYPE y SQLLEN del SQLDA para ver una descripción de los valores permitidos. fin del cambio
stem.n.SQLLEN.SQLPRECISION Para una columna DECIMAL o NUMERIC, la precisión de la columna o parámetro. Para una variable host con un tipo de datos decimal, la precisión de la variable host.
stem.n.SQLLEN.SQLSCALE Para una columna DECIMAL o NUMÉRICA, la escala de la columna o parámetro. Para una variable anfitriona con un tipo de datos decimal, la escala de la variable anfitriona.
stem.n.SQLCCSID Para una columna o parámetro de cadena, el CCSID de la columna o parámetro. Para una variable de host de cadena, el CCSID de la variable de host.
stem.n.SQLUSECCSID No se utiliza. Establecer un nuevo CCSID. Si se establece, REXX cambiará el CCSID de SQLDATA.
stem.n.SQLLOCATOR Para DESCRIBE PROCEDURE, el valor de un localizador de conjunto de resultados. No se utiliza.
stem.n.SQLDATA No se utiliza. Antes de EXECUTE u OPEN, contiene el valor de una variable de host de entrada. La aplicación debe proporcionar este valor.

Después de FETCH, contiene los valores de una variable de host de salida.

stem.n.SQLIND No se utiliza. Antes de EXECUTE u OPEN, contiene un número negativo para indicar que la variable de host de entrada en stem.n.SQLDATA es nula. La aplicación debe proporcionar este valor.

Después de FETCH, contiene un número negativo si el valor de la variable host de salida en stem.n.SQLDATA es nulo.

stem.n.SQLNAME El nombre de la enésima columna en la tabla de resultados. Para DESCRIBE PROCEDURE, contiene el nombre del cursor que utiliza el procedimiento almacenado para devolver el conjunto de resultados. Los valores de SQLNAME aparecen en el orden en que los cursores fueron abiertos por el procedimiento almacenado. No se utiliza.
Inicio del cambio.SQLTNAME stem.n.SQLTNAMEfin del cambio Inicio del cambio

El nombre de tipo distinto totalmente calificado de la enésima columna en la tabla de resultados. Si el nombre calificado tiene más de 30 bytes, se trunca.

fin del cambio
Inicio del cambioNo se utiliza.fin del cambio