psycopg2
следва правилата за DB-API 2.0 (заложени в PEP-249). Това означава, че можете да извикате execute
метод от вашия cursor
обект и използвайте pyformat
стил на обвързване и той ще направи бягството вместо вас. Например следното трябва бъдете в безопасност (и работете):
cursor.execute("SELECT * FROM student WHERE last_name = %(lname)s",
{"lname": "Robert'); DROP TABLE students;--"})