El método execute permite pasar los parámetros de la consulta como argumentos, con lo cual es la misma base de datos que se encarga de escapar los datos.
con sqlite3 seria algo como lo siguiente (aunque vale para otras base de datos) import sqlite3 con = sqlite3.connect("base_datos") cur = con.cursor() *cur.execute("INSERT INTO table (id, desc) VALUES (?,?)", 1, desc)* *https://docs.python.org/2/library/sqlite3.html#sqlite3.Cursor.execute <https://docs.python.org/2/library/sqlite3.html#sqlite3.Cursor.execute>* Jhonatan. El 13 de agosto de 2014, 15:51, Daπid <davidmen...@gmail.com> escribió: > > 2014-08-13 19:08 GMT+02:00 Jean Carlos Rodrìguez < > jeancarlosr...@yahoo.com.dmarc.invalid>: > > >> query_exec("""INSERT INTO table (id, desc) VALUES ({0},"{1}") >> """.format(1,desc)) >> >> pero cuando lee el caracter " de pulgadas lo cierra y me da error, ya he >> tratado haciendo para combinaciones y nada, si alguie ha tenido un error >> asi, o hay una manera de resolverlo mas facil, y no rebentarme la cabeza se >> lo agradeceria. >> > > Python puede parsear esa expresión sin problemas. Las triples comillas > hacen que cuando sólo hay una, sea ignorada. El problema está en la base de > datos. Mi primera idea sería averiguar si esos caracteres están soportados, > y si lo están, cómo se escapan. > > ¿Cuál es el mensaje de error? Ayuda mucho, siempre conviene ponerlo. > > > /David. > > _______________________________________________ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > >
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/