[Python-es] respuesta consulta python y sqlite

joe di castro enxebree en gmail.com
Mie Jun 1 23:48:25 CEST 2011


El problema es el mismo, estas intentando imprimir directamente el
objeto cursor, por eso te aparece ese resultado:

 <sqlite3.Cursor object at 0x0126B4E0>

Necesitas recoger los datos en una variable, bien empleado el metodo
fetchall() para recoger todos los resultados o bien fetchone() para ir
recogiendo uno a uno. Bueno, la verdad es que puedes emplear el cursor
como un iterable, por eso te deja hacer:

for row in c:
    print row

pero cuando intentas hacer hacer el último print, no lo iteras, por lo
tanto te muestra el objeto.

Yo por eso te recomiendo emplear fetchone() y fetchall() siempre y así
te evitas estos problemas. 

Saludos
Joe


El mié, 01-06-2011 a las 16:38 -0500, Manuel Enrique González Ramírez
escribió:
> Perdón a todos,
> 
> 
> De los afanes me comí unas líneas de código (justos las del problema):
> 
> 
> # Consultemos los datos
> c.execute('SELECT * FROM tabla')
> 
> 
> for row in c:
>     print row
> 
> 
> c.execute('select count(secuencia) from tabla')
> print 'Total transacciones: ',c
> 
> 
> 
> 
> 
> El 1 de junio de 2011 16:25, joe di castro <enxebree en gmail.com>
> escribió:
>         Por cierto la documentación que necesites sobre SQLite y
>         sqlite3 la
>         tienes aquí:
>         
>         http://docs.python.org/library/sqlite3.html#module-sqlite3
>         http://www.sqlite.org/
>         
>         Saludos
>         Joe
>         
>         El mié, 01-06-2011 a las 15:19 -0500, Manuel Enrique González
>         Ramírez
>         escribió:
>         
>         
>         > Saludos.
>         >
>         >
>         > Se me presenta un situación en la empresa para la que
>         trabajo que
>         > quiero solucionar con un script de Python acompañado de
>         SQLite.  El
>         > asunto es que no tengo mucha experiencia con SQLite y al
>         querer hacer
>         > un count de una tabla me arroja el resultado con el
>         siguiente formato:
>         >
>         >
>         > <sqlite3.Cursor object at 0x0126B4E0>
>         >
>         >
>         > El fragmento de codigo que me genera el resultado es este:
>         >
>         >
>         > c.execute('SELECT * FROM tabla')
>         >
>         >
>         > for row in c:
>         >     print row
>         >
>         >
>         > Alguien me puede indicar como ver ese resultado en formato
>         decimal??
>         >
>         >
>         > La misma consulta la hago en el editor de sqlite (plugin de
>         Mozilla) y
>         > me arroja el dato en el formato deseado; también me di una
>         pasada por
>         > San Google pero no logro hallar documentación al respecto.
>         >
>         >
>         >
>         >
>         > A todos muchas gracias
>         >
>         > --
>         > Manuel Enrique González Ramírez
>         > http://maengora.blogspot.com
>         >
>         
>         
>         > _______________________________________________
>         > Python-es mailing list
>         > Python-es en python.org
>         > http://mail.python.org/mailman/listinfo/python-es
>         > FAQ: http://python-es-faq.wikidot.com/
>         
>         
>         _______________________________________________
>         Python-es mailing list
>         Python-es en python.org
>         http://mail.python.org/mailman/listinfo/python-es
>         FAQ: http://python-es-faq.wikidot.com/
>         
> 
> 
> 
> -- 
> Manuel Enrique González Ramírez
> http://maengora.blogspot.com
> 
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/




Más información sobre la lista de distribución Python-es