top of page
banner (1845 × 374 px) (6).png

Secuencia de comandos de Python que accede a datos de DB2: ejemplo simple.

La plataforma IBM i ha agregado paquetes de código abierto al sistema para permitir a los desarrolladores ejecutar software de código abierto común en su sistema.

Este documento es un ejemplo simple de cómo instalar Python y usarlo para consultar DB2 para i.

Está vagamente extraído de "Rompiendo PASE:

Accediendo al resto de su IBM i desde Python "

Pasos

1) Instale IBM i Access Client Solutions en un PC cliente y configure una conexión a un sistema IBM i.

2) Dentro de la consola ACS, acceda al menú desplegable "Herramientas" y seleccione "Administración de paquetes de código abierto"

3) Instale los paquetes python3; python3-pip; python3-ibm_db; y python3-itoolkit. Si no se han instalado paquetes de código abierto en su sistema, es probable que la instalación de estos paquetes incorpore paquetes de requisitos previos adicionales.

4) Desde la consola ACS, abra una Terminal SSH en el mismo IBM i.

5) Instale la biblioteca de Python PrettyTable.

$ pip3 install PTable

6) Cree un archivo con una extensión de ".py" y use un editor de texto para agregar el siguiente código fuente.

from prettytable import from_db_cursor import ibm_db_dbi as db2 conn = db2.connect() cur = conn.cursor() cur.execute("select * from qiws.qcustcdt") print(from_db_cursor(cur))

7) Ejecute el script:

$ python3 kpretty.py

Salida:

marquis@MyIBMi:~/scripts$ python3 kpretty.py +--------+----------+------+---------------+--------+-------+--------+--------+--------+---------+--------+ | CUSNUM | LSTNAM | INIT | STREET | CITY | STATE | ZIPCOD | CDTLMT | CHGCOD | BALDUE | CDTDUE | +--------+----------+------+---------------+--------+-------+--------+--------+--------+---------+--------+ | 938472 | Henning | G K | 4859 Elm Ave | Dallas | TX | 75217 | 5000 | 3 | 37.00 | 0.00 | | 839283 | Jones | B D | 21B NW 135 St | Clay | NY | 13041 | 400 | 1 | 100.00 | 0.00 | | 392859 | Vine | S S | PO Box 79 | Broton | VT | 5046 | 700 | 1 | 439.00 | 0.00 | | 938485 | Johnson | J A | 3 Alpine Way | Helen | GA | 30545 | 9999 | 2 | 3987.50 | 33.50 | | 397267 | Tyron | W E | 13 Myrtle Dr | Hector | NY | 14841 | 1000 | 1 | 0.00 | 0.00 | | 389572 | Stevens | K L | 208 Snow Pass | Denver | CO | 80226 | 400 | 1 | 58.75 | 1.50 | | 846283 | Alison | J S | 787 Lake Dr | Isle | MN | 56342 | 5000 | 3 | 10.00 | 0.00 | | 475938 | Doe | J W | 59 Archer Rd | Sutter | CA | 95685 | 700 | 2 | 250.00 | 100.00 | | 693829 | Thomas | A N | 3 Dove Circle | Casper | WY | 82609 | 9999 | 2 | 0.00 | 0.00 | | 593029 | Williams | E D | 485 SE 2 Ave | Dallas | TX | 75218 | 200 | 1 | 25.00 | 0.00 | | 192837 | Lee | F L | 5963 Oak St | Hector | NY | 14841 | 700 | 2 | 489.50 | 0.50 | | 583990 | Abraham | M T | 392 Mill St | Isle | MN | 56342 | 9999 | 3 | 500.00 | 0.00 | +--------+----------+------+---------------+--------+-------+--------+--------+--------+---------+--------+

Otros Tips:

Entradas destacadas
Entradas recientes
Archivo
Buscar por tags
Síguenos
  • Facebook Basic Square
  • Twitter Basic Square
  • Google+ Basic Square
bottom of page