sql >> Databáze >  >> RDS >> PostgreSQL

Escape vstupní data pro postgres

Stačí předat parametry dotazu jako druhý argument pro execute , jako:

>>> cur.execute(
...     """INSERT INTO some_table (an_int, a_date, a_string)
...         VALUES (%s, %s, %s);""",
...     (10, datetime.date(2005, 11, 18), "O'Reilly"))

Poté budou všechny parametry správně zakódovány.

Důvodem je psycopg2 dodržuje Specifikaci rozhraní API databáze Python v2.0 a podporuje bezpečné parametrizované dotazy.

Viz také:




  1. Použití MySQL IF EXISTS

  2. MySQL zde nepodporuje jednořádkové komentáře. Jaký by byl důvod?

  3. SQL Server 2008 SELECT * FROM @proměnná?

  4. Vyberte nejmenší hodnotu z více sloupců pomocí PHP/MySQL