Dos consultas sobre MySQL

Javier Castrillo riverplatense en gmail.com
Mar Abr 24 13:22:03 CEST 2007


On 23/04/07, Gabriel Genellina <gagsl-py2 en yahoo.com.ar> wrote:
>
> Eso es u"Julián" codificado en latin1 (o iso-8859-1). Pero afirmabas que
> tu consola esta en utf8 (será cierto? probá con: import sys; print
> sys.getdefaultencoding(); print sys.stdout.encoding)

Me dan respectivamente  "ascii" y "none"

> Si de verdad estas usando utf8 y de la base de datos te viene un string
> codificado en latin1, habria que hacer:
> xxx.decode("latin1").encode("utf8"). Pero es medio feíto.

Ahora, lo que veo es lo siguiente. Para no acumular errores, las
pruebas de las tuplas (punto 1) lo hice con un registro "Perez Juan" o
sea sin acentos. Ahora cuando lo pruebo con el famoso "Julián" me
aparece:

  File "/home/javier/python/wxpython/proyecto_sancabase/sancabase.py",
line 455, in OnModAlumnos
    LblQNMA = wx.StaticText(panelMA, -1, "Nombre: %s" % q[0][0], (50, 80))
  File "/usr/lib/python2.4/site-packages/wx-2.8-gtk2-unicode/wx/_controls.py",
line 1135, in __init__
    _controls_.StaticText_swiginit(self,_controls_.new_StaticText(*args,
**kwargs))
  File "encodings/utf_8.py", line 16, in decode
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 12-13:
unexpected end of data

Las líneas en cuestión son (la primera es la 449)

        c = self.db.cursor()
        c.execute("""SELECT nombres, num_doc FROM alumnos WHERE
apellidos = %s""", (self.apellido,))
        q = c.fetchmany()
        print sys.getdefaultencoding()  #para probar lo que me pediste
        print sys.stdout.encoding          #idem

        LblQNMA = wx.StaticText(panelMA, -1, "Nombre: %s" % q[0][0], (50, 80))
        LblQDMA = wx.StaticText(panelMA, -1, "DNI: %s" % q[0][1], (50, 110))
        self.MA.Show(True)

Desde ya te agradezco enormemente la ayuda!!! Saludos

-- 
Javier Castrillo

=========================================================
GNU / Linux User #242275

-------------------------------
pub   1024D/B482896F 2006-09-04
uid                  Javier Castrillo (El Palo) <riverplatense en gmail.com>
sub   2048g/52C99A4E 2006-09-04

Clave pública: carapa.com.ar/public.asc
http://carapa.com.ar
http://javiercastrillo.com.ar
http://riverplatense.googlepages.com
=========================================================
Usá Software Libre




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