.png)
Shell SQL JDBC en la Nube de InterSystems
Una forma sencilla de conectar, explorar y depurar los Servicios en la Nube de InterSystems mediante JDBC con sqlline.
Esta publicación respalda la aplicación de Open Exchange que ofrece algo más de detalle sobre cómo conectaros rápidamente a un prompt de InterSystems Cloud SQL. Aquí nos conectaremos a un único Cloud SQL mediante JDBC para realizar algunas operaciones y, después, nos conectaremos a varios y federaremos el SQL para trabajar con múltiples despliegues a la vez.
Inicio rápido
Vamos a mantenerlo breve y esperamos que sea sencillo.
Obtener la aplicación
https://github.com/sween/isc-cloud-jdbc-sql-shell
Descarga
- Driver ☕
- Certificado(s) para los despliegues 📃
Compilación
cd isc-cloud-jdbc-sql-shell
docker build -t isc-cloud-jdbc-sql-shell .
Inicio
Rellenad run.sh como si fuera un formulario; incluye las credenciales y la información del JDBC URL.
bash run.sh
.png)
sqlline
No tiene sentido repetir el extenso manual de sqlline una vez que estáis conectados, pero aquí tenéis algunos ejemplos de uso en un par de ofertas de InterSystems Cloud en forma de artículo.
Esto es solo una implementación del gran sqlline, con conectividad TLS sencilla para facilitar su uso.

Ejemplos de uso
Registro de sesión
Aquí configuraremos el registro del shell en la carpeta de salida y empezaremos a consultar la base de datos. Esto terminará en vuestro sistema local cuando finalicéis la sesión.
!set script /output/debug_omop_jdbc.log
Vale la pena mostrar esto porque, si no lo habéis visto ya, sqlline tiene una interfaz de !command que podéis consultar con !help.
Crear esquema y copiar tabla
No es nada revolucionario, pero podéis ver el resultado en el Portal… aquí creamos un esquema y copiamos una tabla de un esquema a otro recién creado.
sween@pop-os:~/Desktop/OMOP/isc-cloud-sql-shell$ bash run.sh
Starting sqlline and connecting to:
URL : jdbc:IRIS:
Driver : com.intersystems.jdbc.IRISDriver
User : SQLAdmin
Transaction isolation level TRANSACTION_REPEATABLE_READ is not supported. Default (TRANSACTION_READ_UNCOMMITTED) will be used instead.
sqlline version 1.12.0
ISC > CREATE SCHEMA OMOPCDM54BAK
No rows affected (0.091 seconds)
ISC > CREATE TABLE OMOPCDM54BAK.person AS SELECT * FROM OMOPCDM54.person
1,101,000 rows affected (5.84 seconds)
ISC >
.png)
SQL federado entre despliegues
Más o menos revolucionario… mientras estáis conectados al despliegue en contexto con el que lo iniciasteis, conectaos también a otra base de datos, de otro tipo de oferta, y ejecutad SQL federado contra todas con !all. Hay una carpeta llamada “certs” en la que podéis dejar todos los certificados de los despliegues que tengáis y reconstruir el contenedor cuando queráis.
sqlline permite usar !connect para añadir conexiones a vuestra lista, de modo que podéis seleccionarlas o ejecutar cosas contra !all.
.png)
🎉