<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Hola Gerardo. <br>Cuando el fallo está al crear la sentencia sql, el programa da otro error diferente (que no recuerdo ahora mismo) y no ejecutaría el curs.execute(query). En mi caso las que debo escapar son las ", y lo hago antes de pasarle el parámetro autor y cita, vamos que entran despiojados, por lo menos de ". <br>En el caso de que no estuviera bien formada la sql no entraría en la BD y sigue entrando y a la vez, dando el error, que es lo que me mosquea. Porque ahora mismo tengo el programa funcionando y haciendo su función correctamente, pero devuelve también el mensaje de error, como si hubiera fallado.<br>La única línea que puede lanzar el fallo es curs.execute(query), ya que es lo único que tengo en el try.<br>Los campos de la BD son varchar y los parámetros que entran son str.<br><br>Un saludo.<br><br><br><br>--- On <b>Mon, 2/21/11, gerardo
 Juarez <i>&lt;gerardojuarez@buyteknet.info&gt;</i></b> wrote:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>From: gerardo Juarez &lt;gerardojuarez@buyteknet.info&gt;<br>Subject: Re: [Python-es] 'int' does not support the buffer interface<br>To: "La lista de python en castellano" &lt;python-es@python.org&gt;<br>Date: Monday, February 21, 2011, 3:37 PM<br><br><div class="plainMail">De todas formas, la interpolación de variables en un comando SQL es una práctica suficientemente mala como para que estemos seguros que ese no es el problema (<a href="http://initd.org/psycopg/docs/usage.html#the-problem-with-the-query-parameters" target="_blank">http://initd.org/psycopg/docs/usage.html#the-problem-with-the-query-parameters</a>). Lo mismo que dice esta liga más o menos se dice en relación con MySQLdb.&nbsp; En tu caso, pudiera estarse generando una condición acumulativa que después de cierto
 tiempo de trabajo te da el error.<br><br>Yo recomendaría tres acciones:<br>- cambiar la sintaxis como sugiere Marco y reintentar.<br>- ver si el error está adscrito a una línea en particular o asegurarse cuál es la última línea que se ejecuta.<br>- verificar qué tipos tienen las columnas text y author en la tabla de la base y en el código del programa.<br><br>Si puedes enviar esos datos a la lista, probablemente pudiéramos tener otra pista o sugerencia.<br><br>saludos<br>Gerardo<br><br>Spectrum Cuarenta y ocho k wrote:<br>&gt; Ese no debe ser el problema, hay muchas con apóstrofes y entran sin problemas. Las dobles comillas las escapo en otra parte del código, antes de pasárselo a esa función. Si fuera eso, fallaría siempre, y solo ejecutaría el error. De hecho, cuando pasa eso, da un error distinto y no te deja insertar la fila.<br>&gt;&nbsp; Lo raro de esto, es que solo pasa depués de un tiempo de estar metiendo filas, y aunque sigue
 funcionando (entran en la tabla, por lo que se intuye que no hay error) se mete en el try y lo ejecuta todo. Después de reiniciar el ordenata, filas que antes marcaban error, ahora no lo marcan, sin haber hecho cambios sobre el código.<br>&gt; <br>&gt; Gracias de todas maneras.<br>&gt; <br>&gt; --- On *Mon, 2/21/11, Marcos Sánchez Provencio /&lt;<a ymailto="mailto:rapto@arrakis.es" href="/mc/compose?to=rapto@arrakis.es">rapto@arrakis.es</a>&gt;/* wrote:<br>&gt; <br>&gt; <br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;From: Marcos Sánchez Provencio &lt;<a ymailto="mailto:rapto@arrakis.es" href="/mc/compose?to=rapto@arrakis.es">rapto@arrakis.es</a>&gt;<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;Subject: Re: [Python-es] 'int' does not support the buffer interface<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;To: "La lista de python en castellano" &lt;<a ymailto="mailto:python-es@python.org" href="/mc/compose?to=python-es@python.org">python-es@python.org</a>&gt;<br>&gt;&nbsp;
 &nbsp;&nbsp;&nbsp;Date: Monday, February 21, 2011, 1:23 PM<br>&gt; <br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;Hola<br>&gt; <br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;Te estás haciendo t mismo un sql injection. Seguramente, si tienes<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;apóstrofes en los datos, casque. Repasa la documentación de uso de<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;parámetros en DB-API.<br>&gt; <br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;Prueba<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;def insertar(autor, texto):<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;query = "INSERT INTO famous_quote (text, author) VALUES<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;(%s,%s)<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;curs = conn.cursor()<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;try:<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;curs.execute(query, (autor, texto))<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
 &nbsp;&nbsp;&nbsp;except Exception as errr:<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;print("mesaje del fallo: " + str(errr))<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;print("Fallo en: " + query)<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;pass<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;finally:<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;if(curs):<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;curs.close()<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;conn.commit()<br>&gt;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;print("OK!")<br>&gt; <br>&gt;&nbsp;
 &nbsp;&nbsp;&nbsp;El lun, 21-02-2011 a las 04:40 -0800, Spectrum Cuarenta y ocho k<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;escribió:<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;&gt; query = "INSERT INTO famous_quote (text, author) VALUES (\"%s\",<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;\"%s<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;&gt; \")" % (texto, autor)<br>&gt; <br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;_______________________________________________<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;Python-es mailing list<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;<a ymailto="mailto:Python-es@python.org" href="/mc/compose?to=Python-es@python.org">Python-es@python.org</a> &lt;/mc/compose?to=<a ymailto="mailto:Python-es@python.org" href="/mc/compose?to=Python-es@python.org">Python-es@python.org</a>&gt;<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;<a href="http://mail.python.org/mailman/listinfo/python-es" target="_blank">http://mail.python.org/mailman/listinfo/python-es</a><br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;FAQ: <a
 href="http://python-es-faq.wikidot.com/" target="_blank">http://python-es-faq.wikidot.com/</a><br>&gt; <br>&gt; <br>&gt; ------------------------------------------------------------------------<br>&gt; <br>&gt; _______________________________________________<br>&gt; Python-es mailing list<br>&gt; <a ymailto="mailto:Python-es@python.org" href="/mc/compose?to=Python-es@python.org">Python-es@python.org</a><br>&gt; <a href="http://mail.python.org/mailman/listinfo/python-es" target="_blank">http://mail.python.org/mailman/listinfo/python-es</a><br>&gt; FAQ: <a href="http://python-es-faq.wikidot.com/" target="_blank">http://python-es-faq.wikidot.com/</a><br>&gt;&nbsp;&nbsp;&nbsp;<br><br>_______________________________________________<br>Python-es mailing list<br><a ymailto="mailto:Python-es@python.org" href="/mc/compose?to=Python-es@python.org">Python-es@python.org</a><br><a href="http://mail.python.org/mailman/listinfo/python-es"
 target="_blank">http://mail.python.org/mailman/listinfo/python-es</a><br>FAQ: <a href="http://python-es-faq.wikidot.com/" target="_blank">http://python-es-faq.wikidot.com/</a><br></div></blockquote></td></tr></table><br>