Transformaciones CAST implícitas para asignación

Pueden asignarse valores a una de estas tres entidades.
Un campo de mensaje (o equivalente en una excepción o lista de destinos)
El soporte para la conversión implícita entre los tipos de datos de WebSphere Business Integration Message Broker y el mensaje (en su formato de corriente de bits) depende del analizador adecuado. Por ejemplo, el analizador XML efectúa una transformación CAST de todo como series de caracteres antes de insertarlas en el mensaje de WebSphere MQ.
Un campo de una tabla de base de datos

WebSphere Business Integration Message Broker convierte cada uno de sus tipos de datos a un tipo de datos de SQL C estándar adecuado, tal como se detalla en la tabla siguiente. La conversión entre este tipo de datos SQL C estándar y los tipos de datos soportados por cada DBMS depende del DBMS. Consulte la documentación de DBMS para obtener más detalles.

La tabla siguiente lista las conversiones disponibles de WebSphere Business Integration Message Broker a tipos de datos SQL

Tipo de datos de WebSphere Business Integration Message Broker Tipo de datos SQL
NULL, o valor desconocido o no válido SQL_NULL_DATA
BOOLEAN SQL_C_BIT
INTEGER SQL_C_LONG
FLOAT SQL_C_DOUBLE
DECIMAL SQL_C_CHAR1
CHARACTER SQL_C_CHAR
TIME SQL_C_TIME
GMTTIME SQL_C_TIME
DATE SQL_C_DATE
TIMESTAMP SQL_C_TIMESTAMP
GMTTIMESTAMP SQL_C_DATE
INTERVAL No soportado2
BLOB SQL_C_BINARY
BIT No soportado2
Notes:
  1. A efectos prácticos, los valores DECIMAL se pasan a DBMS en formato de tipo carácter.
  2. No hay un tipo de datos de SQL C estándar adecuado para INTERVAL o BIT. Efectúe una transformación CAST de ellos a otro tipo de datos como, por ejemplo, CHARACTER, si tiene que asignarlos a un campo de base de datos.
Una variable escalar
Al efectuar una asignación a una variable escalar, si el tipo de datos del valor que se asigna y el del tipo de datos de la variable de destino son diferentes, se intenta una transformación CAST implícita con las mismas limitaciones y comportamiento que el especificado para la función CAST explícita. La única excepción se produce cuando el tipo de datos de la variable es INTERVAL o DECIMAL.

En ambos casos, se efectúa una transformación CAST del valor que se asigna a un valor CHARACTER y se intenta efectuar una transformación CAST del valor CHARACTER a INTERVAL o DECIMAL. Esto se debe a que INTERVAL necesita un calificador y DECIMAL necesita una precisión y una escala. Éstas deben especificarse en la transformación CAST explícita, pero deben obtenerse de la serie de caracteres cuando se efectúe una transformación CAST implícita. Por consiguiente, una limitación adicional es que, cuando se efectúe una transformación CAST implícita a una variable INTERVAL, la serie de caracteres debe tener el formato INTERVAL '<valores>' <calificador>. El formato <valores> abreviado que es aceptable para la transformación CAST explícita no es aceptable en este caso.

Conceptos relacionados
ESQL

Tareas relacionadas
Desarrollo de ESQL

Referencia relacionada
Funciones ESQL complejas
Transformaciones CAST implícitas
Transformaciones CAST implícitas para comparaciones
Transformaciones CAST implícitas para operaciones aritméticas