PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

erreur python 2.7 à python 3.4 type(s) d'opérande non pris en charge pour % :'octets' et 'dict'

Grâce aux commentaires, je l'ai porté en python 3

def compile_query(query):
    dialect = query.session.bind.dialect
    statement = query.statement
    comp = compiler.SQLCompiler(dialect, statement)
    comp.compile()
    enc = dialect.encoding
    params = {}
    for k,v in comp.params.items():
        if isinstance(v, str):
            v = v.encode(enc)
        params[k] = sqlescape(v)
    return (comp.string % params)