Bare send forespørgselsparametre som et andet argument for at execute
, som:
>>> cur.execute(
... """INSERT INTO some_table (an_int, a_date, a_string)
... VALUES (%s, %s, %s);""",
... (10, datetime.date(2005, 11, 18), "O'Reilly"))
Derefter vil alle parametre blive korrekt escaped.
Dette er fordi psycopg2
følger Python Database API Specification v2.0
og understøtter sikre parametriserede forespørgsler.
Se også:
- Parameteriserede forespørgsler med psycopg2 / Python DB-API og PostgreSQL
- psycopg2 ækvivalent til mysqldb.escape_string?