sql >> Databasteknik >  >> RDS >> PostgreSQL

Escape indata för postgres

Skicka bara frågeparametrar som ett andra argument för att 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"))

Då kommer alla parametrar att escapes korrekt.

Detta beror på att psycopg2 följer Python Database API Specification v2.0 och stöder säkra parametriserade frågor.

Se även:




  1. Frågeoptimeringstekniker i SQL Server:5 bästa metoder för att öka sökresultaten

  2. Försök att ladda Oracle-klientbibliotek kastade BadImageFormatException

  3. MySQL-datatyp INT(11) medan UNSIGNED INT(10)?

  4. Subqueries vs joins