[pyar] INSERTAR UNA IMAGEN EN UNA BASE DE DATOS MYSQL

Gerardo Rios gsr.5392.tec en gmail.com
Dom Feb 28 21:34:02 ART 2016


HOLA GABRIEL DAVINI:

GRACIAS POR PASARME LA LISTA DE EXCEPCIONES, AGREGUE LA EXCEPCION GENERICA
COMO ME PASASTE EN EL EJEMPLO Y LA EXCEPCION ME TIRA EL SIGUIENTE ERROR:

Wrong number of arguments during string formatting

QUE SI LO TRADUZCO ME DICE: Número incorrecto de argumentos en el formato
de cadenas

PARA MI QUE EL ERROR ESTA EN EL TIPO DE DATOS DE LA IMAGEN, YO LO PUSE COMO
LONGBLOB Y CREO QUE TIENE QUE SER BLOB SOLAMENTE, VOY A VER QUE ME DA.

HACIENDO LA PRUEBA, ME SALE EL MISMO MENSAJE: Wrong number of arguments
during string formatting


SALUDOS

GERARDO

El 27 de febrero de 2016, 12:27, Gabriel Davini <
gabrielfranciscodavini en gmail.com> escribió:

>
> 2016-02-26 23:13 GMT-03:00 Gerardo Rios <gsr.5392.tec en gmail.com>:
>
>>   #se carga los datos en la base de datos
>>   sql = """INSERT INTO IMAGENES (imagen,tipo) VALUES (% s,% s)""" ,
>> (datos, formato)
>>
>
> Aca estás creando una tupla. Me parece que lo que estás intentando hacer
> aca es:
>
> sql = """INSERT INTO IMAGENES (imagen,tipo) VALUES (% s,% s)"""  % (datos,
> formato)
>
> o mejor:
>
> sql = """INSERT INTO IMAGENES (imagen,tipo) VALUES (% s,% s)"""
>
> cursor.execute(sql, datos, formato)
>
> Digo mejor porque de esta manera el connector de mysql se debería encargar
> de sanitizar las variables y evitar asi algun ataque por inyección de SQL.
>
>
>>   try:
>>    #Ejecutamos el comando
>>     cursor.execute(sql)
>>    #Efectuamos los cambios en la base de datos
>>     bd_imagenes.commit()
>>     print "Los datos se agregaron con exito"
>>   except:
>>    #Si se genero algún error revertamos la operación
>>     bd_imagenes.rollback()
>>     print "no se pudo agregar los datos"
>>
>
> *No* es recomendable[0] atrapar excepciones de forma genérica, ya que te
> puede llevar a no identificar cuál es el error y por ende no poder
> solucionarlo. Si no estás seguro de qué excepciones te puede crear una
> parte del código, podés hacer algo asi[1] al principio, cosa de poder
> debuguearlo, y luego si agregar las excepciones específicas.
>
> Saludos!
>
> [0] http://www.tutorialspoint.com/python/python_exceptions.htm
> [1] http://linkode.org/eNJoBYXPc36bgha4mU7fD2
> --
> Gabriel.
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20160228/21ca8926/attachment.html>


Más información sobre la lista de distribución pyar