Rechercher

Article
· 2 hr il y a 3m de lecture

Crear tablas externas usando SQL a través de JDBC

Hola a todos. De nuevo, me gustaría compartir lo que estoy estudiando recientemente: crear tablas externas usando SQL a través de JDBC.

Como estoy aprendiendo sobre IRIS BI al mismo tiempo, empecé con este entorno docker de Sample-BI.

https://github.com/intersystems/Samples-BI

 

Después de iniciar el entorno, iniciad sesión en el portal de administración en http://localhost:52773/csp/sys/UtilHome.csp con el usuario Superuser.

Cambiad el namespace a IRISAPP.

 

😀 Veremos que todos los datos de ejemplo están almacenados en este namespace IRISAPP. Busquemos una tabla sencilla para probar la función de Foreign Table 🤣

System Explorer > SQL

 

Probemos la tabla HoleFoods.Outlet ejecutando la siguiente consulta SQL en la pestaña Execute Query.

SELECT
ID, City, Country, Latitude, Longitude, Population, Type
FROM HoleFoods.Outlet

 

Genial!! 😉 Hay 35 registros en esta tabla. Usemos esta.

 


Paso 1 - Configurar la conexión JDBC

Estudiando el siguiente documento, la base de datos InterSystems IRIS puede conectarse por JDBC de la siguiente manera:

Using the SQL Gateway as a JDBC Data Source

Así que usemos el namespace IRISAPP como la base de datos origen JDBC para las pruebas y configuremos una conexión para ello.

Añadid una nueva conexión en System > Configuration > SQL Gateway Connections

 

Introducid lo siguiente:

Connection name  testjdbc
User superuser
Password {vuestra propia contraseña}
Driver name com.intersystems.jdbc.IRISDriver
URL  jdbc:IRIS://127.0.0.1:1972/IRISAPP

Dejad Class path en blanco en este caso, porque estáis conectando a la base de datos InterSystems IRIS. Si os conectáis a una base de datos de terceros, recordad descargar el archivo del controlador JDBC (.jar) y especificar la ruta del controlador en el campo Class path.

Guardad y probad la conexión. Debería conectarse correctamente. 😁

¡Sí! 🎉 Hemos terminado el primer paso.

 


Paso 2 - Crear la Foreign Table

Ahora cambiad al namespace USER, que no contiene la tabla HoleFoods.Outlet. 😉

Aquí queremos consultar esta tabla externa HoleFoods.Outlet utilizando la función de Foreign Table. (En InterSystems IRIS, distintos namespaces pueden configurarse para apuntar a bases de datos diferentes. En este ejemplo, el namespace IRISAPP y el namespace USER apuntan a bases de datos distintas. Como resultado, no podemos consultar la tabla del namespace IRISAPP directamente desde el namespace USER).

 

Estudiando el siguiente documento, podemos crear directamente una foreign table mediante SQL. 😁👍

Foreign Tables

Así que volvamos a la página de ejecución SQL: System Explorer > SQL

 

1. Definir un Foreign Server

Ahora vamos a definir un Foreign Server llamado Sample.testDB con el siguiente SQL. testjdbc es el nombre que definimos en la conexión JDBC del SQL Gateway en el paso anterior.

CREATE FOREIGN SERVER Sample.testDB FOREIGN DATA WRAPPER JDBC CONNECTION 'testjdbc'

 

 

2. Definir una Foreign Table

Ahora vamos a definir una Foreign Table llamada demo.outlet, que apunta a la tabla HoleFoods.Outlet a través del gateway JDBC.

 

CREATE FOREIGN TABLE demo.outlet SERVER Sample.testDB TABLE 'HoleFoods.Outlet'

Comprobemos el resultado en la lista de tablas.

¡Sí! 🎉 Se ha creado la Foreign Table demo.outlet. Oooh, y el esquema se ha leído y creado automáticamente 😂 Qué alegría.

 


Finalmente, probad la Foreign Table ejecutando el siguiente SQL

SELECT * FROM demo.outlet

 

 

¡Se devuelven 35 Outlets! ¡Sí! Lo conseguimos. 🤣

 


Solo para vuestra referencia:

Eliminar la Foreign Table demo.outlet

DROP FOREIGN TABLE demo.outlet

 

 

Eliminar el Foreign Server Sample.testDB

DROP FOREIGN SERVER Sample.testDB CASCADE

 

¡Eso es todo lo que quería compartir! ¡Gracias por leer! 😘

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer
Annonce
· 3 hr il y a

Limpeza das configurações do VS Code

Olá, Comunidade! Com o fim de mais um ano incrível, gostaria de avisar sobre uma mudança que está por vir na extensão vscode-objectscript. Para reduzir o tamanho da extensão, simplificar a manutenção e melhorar a usabilidade, a InterSystems planeja remover algumas configurações pouco utilizadas. Nossos dados indicam que menos de 2% dos usuários alteram essas configurações em relação aos valores padrão. No entanto, antes de finalizar a remoção, gostaria de dar aos usuários dessas configurações a oportunidade de explicar por que elas não deveriam ser removidas.

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer
Question
· 5 hr il y a

Does IRIS for Healsth support non standard FHIR Search parameters for pagination?

Hi,

Does IRIS have any support for paginating FHIR searches other than the standard next/prev links as defined in the FHIR spec?  For instance, some servers support an _offset or _skip parameter to allow for jumping to specific pages in a result set.  

1 nouveau commentaire
Discussion (1)1
Connectez-vous ou inscrivez-vous pour continuer
Annonce
· 6 hr il y a

VS Code configuration settings cleanup

Hello Community! As another great year comes to a close, I wanted to notify you about an upcoming change to the vscode-objectscript extension. In an effort to reduce the extension's footprint, simplify maintenance, and improve ease of use, InterSystems plans to remove some rarely-used configuration settings. Our telemetry tells us that these settings are changed from the default by fewer than 2% of users. However, before finalizing the removal I would like to give any users of these settings the opportunity to explain why a setting shouldn't be removed.

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer