mirror of
https://github.com/psycopg/psycopg2.git
synced 2024-11-10 19:16:34 +03:00
Fixed SQL_IN when getquoted() is called without prepare()
This commit is contained in:
parent
d183657c11
commit
a733416241
|
@ -116,20 +116,21 @@ def register_adapter(typ, callable):
|
|||
# The SQL_IN class is the official adapter for tuples starting from 2.0.6.
|
||||
class SQL_IN(object):
|
||||
"""Adapt any iterable to an SQL quotable object."""
|
||||
|
||||
def __init__(self, seq):
|
||||
self._seq = seq
|
||||
self._conn = None
|
||||
|
||||
def prepare(self, conn):
|
||||
self._conn = conn
|
||||
|
||||
|
||||
def getquoted(self):
|
||||
# this is the important line: note how every object in the
|
||||
# list is adapted and then how getquoted() is called on it
|
||||
pobjs = [adapt(o) for o in self._seq]
|
||||
for obj in pobjs:
|
||||
if hasattr(obj, 'prepare'):
|
||||
obj.prepare(self._conn)
|
||||
if self._conn is not None:
|
||||
for obj in pobjs:
|
||||
if hasattr(obj, 'prepare'):
|
||||
obj.prepare(self._conn)
|
||||
qobjs = [o.getquoted() for o in pobjs]
|
||||
return b('(') + b(', ').join(qobjs) + b(')')
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user