[Python-es] Necesito verificar o crear una tabla que contiene en el nombre una variable?
zodman
zodman en gmail.com
Mie Mar 14 19:30:52 CET 2012
sql = """insert into u_%(variable)s ( id ) VALUES (%(idunidad)s)""" % dict(
variable= variable, idunidad = idunidad)
cursor.execute(sql)
2012/3/14 Diego Uribe Gamez <diego.uribe.gamez en gmail.com>
> La intención es insertar en una base de datos el dato idunidad en el campo
> id, la cuestión es que si no existe la tabla numero '12345' (variable) la
> cree, pero que si ya existe solo guarde el dato.
>
> -----------------------------------------------------------------------------------------
> variable = '12345'
> idunidad = 2501
> sql = ("""insert into u_%(variable)s ( id ) VALUES (%s)""")
> # si puede guardar la variable en la base de datos hacer:
> if cursor.execute(sql, (idunidad,) % {table_name: table_name}):
> db.commit()
> cursor.close()
> db.close()
> # Pero si no puede porque la base de datos no existe, crear la base de
> datos y guarde el dato.
> else:
> cursor.execute('''create table u_%(variable)s stocks (id)''')
> cursor.execute(sql,(id,) % {table_name: table_name})
> db.commit()
> cursor.close()
> db.close()
>
> -----------------------------------------------------------------------------------------
> Al final me sale este error:
> TypeError: unsupported operand type(s) for %: 'tuple' and 'dict'
>
> No logro hacer que variable entre a la consulta como el contenido de la
> variable = '12345' que es dinamica y lograr hacer que la base de datos
> nueva quede con el nombre: u_12345, alguna sugerencia?
>
>
> --
> *Diego Alonso Uribe Gamez*
> ------------------------------
>
> *Desarrollador web*
>
> Twitter: @DiegoUG <http://www.twitter.com/DiegoUG>
>
> Google+: http://gplus.to/diegoug
> ------------------------------
>
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20120314/ddf6ef88/attachment.html>
Más información sobre la lista de distribución Python-es