Thomas Guettler schrieb:
Hi,
I discovered this:
import psycopg2
connection=psycopg2.connect("dbname='...' user='...'")
cursor=connection.cursor()
cursor.execute('''SELECT '%' ''') # Does not fail
cursor.execute('''SELECT '%' ''', ()) # Does fail
Traceback (most recent call last):
File "/localhome/modw/tmp/t.py", line 5, in <module>
cursor.execute('''SELECT '%' ''', ()) # Does fail
IndexError: tuple index out of range
Is this a bug in psycopg2?
How do other PEP 249 implementation behave?
Not a bug. The second execute is the parametrized variant, which simply
tries to fetch the parameters from the passed collection. As you give an
empty collection, but specify one parameter, the error is quite obvious.
The first execute takes the SQL-string as literal.
Diez
--
http://mail.python.org/mailman/listinfo/python-list