ESQL tiene varias sentencias y
funciones para acceder a bases de datos:
Puede acceder a bases de datos de
usuario desde nodos Compute, Database y Filter.
Nota: No hay ninguna
diferencia entre las posibilidades de acceso a base de datos en estos
nodos; sus nombres son, en parte históricos y en parte basados en el uso
típico.
Puede utilizar los datos de las bases de datos para
actualizar o crear mensajes; o utilizar los datos del mensaje para
actualizar o crear datos de las bases de datos.
Observe que:
- Cualquier nodo que utilice cualquiera de las funciones o sentencias de
base de datos ESQL debe tener la propiedad
Origen de datos establecida en
el nombre (es decir, el DSN ODBC) de una base de datos. La base de datos debe
estar accesible, operativa, y permitir que el intermediario pueda
conectarse a ella.
- Todas las bases de datos a las que se acceda desde el mismo nodo deben
tener la misma funcionalidad OBDC que la base de datos especificada en la
propiedad Origen de datos del
nodo. Este requisito siempre se satisface si las bases de datos son del mismo
tipo (por ejemplo, DB2 u Oracle), están al mismo nivel (por
ejemplo, release 8.1 CSD3) y en la misma plataforma. Otras
combinaciones de bases de datos pueden tener o no la misma funcionalidad OBDC. Si un nodo intenta acceder a una base de datos que no tiene la misma
funcionalidad OBDC que la base de datos especificada en la propiedad
Origen de datos del nodo, el
intermediario emite un mensaje de error.
- Todas las tablas a las que hace referencia en una sola cláusula
SELECT FROM deben estar en la misma base de datos.
Debe asegurarse de que se han creado
orígenes de datos ODBC adecuados en el sistema en el que se está
ejecutando el intermediario. Si ha utilizado el mandato
mqsisetdbparms para
establecer un ID de usuario y una contraseña para una base de datos
determinada, el intermediario utiliza estos valores para conectarse a la
base de datos. Si no ha establecido un ID de usuario y una contraseña,
el intermediario utiliza el ID de usuario y la contraseña de base de datos
por omisión que ha suministrado en el mandato
mqsicreatebroker (tal
como ha modificado con cualquier mandato
mqsichangebroker
posterior).
En sistemas
z/OS, utilice el miembro JCL BIPSDBP en el conjunto de datos de
personalización <hlq>.SBIPPROC para realizar el
mandato mqsisetdbparms.
También debe asegurarse de que los
ID de usuario de base de datos tengan los privilegios
suficientes para realizar las operaciones que requiere su flujo. De lo contrario, se producirán errores en tiempo de ejecución.
Marque
el recuadro de selección de la propiedad
Generar excepción en error de base de
datos y el recuadro de selección de la propiedad
Tratar los avisos como errores,
y establezca la propiedad Transacción en
Automática, para
proporcionar la máxima flexibilidad. A continuación, puede utilizar las
sentencias COMMIT y ROLLBACK para controlar las transacciones y crear
manejadores para gestionar los errores.