Base de conocimiento

Creado por eth0
2011-03-31
12:25:40

Categorías
Etiquetas

Cómo devolver resultados de consultas como diccionarios usando Python y cx_Oracle

Aunque el driver oci8 de PHP es capaz de devolver los resultados de las consultas como arrays asociativos, el módulo cx_Oracle de Python no lo hace.

Sin embargo, podemos emular este comportamiento nosotros mismos escribiendo algo como lo siguiente:

  1. def aquery(dbh, query):
  2.     # dbh es el objeto de conexión a Oracle.
  3.     curs = dbh.cursor()
  4.     curs.execute(query)
  5.     fields = [field[0] for field in curs.description]
  6.     values = curs.fetchall()
  7.  
  8.     return dict(zip(fields, values))