I try the example in the manual:
SQL = "INSERT INTO authors (name) VALUES (%s);"
data = ("O'Reilly", )
cur.mogrify(SQL,data)
"INSERT INTO authors (name) VALUES (E'O''Reilly');"
strange characters:
àE’ß
The same in
>>> cur.mogrify("select * from xxx where coll='%(coll)s'",{'coll':'1'});
"select * from xxx where coll='E'1''"
Instead with number work fine:
>>> cur.mogrify("select * from xxx where coll='%(coll)s'",{'coll':1});
"select * from xxx where coll='1'"
Environment:
Server: PostgreSQL 9.0.1 on x86_64-unknown-linux-gnu, compiled by GCC gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48), 64-bit
psycopg2-2.3.1
Villiam