Es posible tener más de una conexión en una aplicación. Por ejemplo, quiero trabajar en un sistema que use 2 bases de datos.
1 respuesta
Respuesta de pulpo12
1
1
pulpo12, Ingeniero de Sistemas, amplia experiencia
Para establecer conexión con dos bases de datos o más; lo que debes hacer es crear un objeto transaccional (que sea heredado de un objeto de usuario que hayas creado tu y que sea de tipo transacción, ¿o en código normal)? Las transacciones las declaras como variables de tipo global, supongamos que declaras una transacción como gtr_datos y gtr_seguridad: transaction gtr_datos, gtr_seguridad En tu codigo después de que digitan el usuario, la contraseña y demás, haces lo siguiente gtr_datos = create transaction gtr_datos.DataBase = ?BASEDEDATOSDEUSUARIO? gtr_datos.UserId = ?usuario? gtr_datos.DBPass = ?password? y defines todos los valores que necesitas para esa transacción; igual haces con la transacción que has declarado para seguridad, luego haces la conexión usando el comando CONNECT Using gtr_datos y luego para gtr_seguridad; en ese momento para hacer referencia a la transacción, siempre tendrás que usar el Using NOMBRE_TRANSACCION; y el error por ejemplo lo recibes como gtr_datos.sqlcode Por ejemplo: SELECT max(campo) INTO :li_valor FROM tablas USING gtr_datos; IF gtr_datos.sqlcode = 0 THEN conexión exitosa INSERT INTO tabla (campo) VALUES (:li_valor) USING gtr_seguridad;