De fleste sprog giver en måde at lave generiske parametriserede udsagn, Python er ikke anderledes. Når en parameteriseret forespørgsel bruges, vil databaser, der understøtter forberedelse af sætninger, automatisk gøre det.
I python ser en parameteriseret forespørgsel sådan ud:
cursor.execute("SELECT FROM tablename WHERE fieldname = %s", [value])
Den specifikke parametreringsstil kan være forskellig afhængig af din driver. Du kan importere dit db-modul og derefter foretage en print yourmodule.paramstyle
.
Fra PEP-249 :
paramstyle
String constant stating the type of parameter marker
formatting expected by the interface. Possible values are
[2]:
'qmark' Question mark style,
e.g. '...WHERE name=?'
'numeric' Numeric, positional style,
e.g. '...WHERE name=:1'
'named' Named style,
e.g. '...WHERE name=:name'
'format' ANSI C printf format codes,
e.g. '...WHERE name=%s'
'pyformat' Python extended format codes,
e.g. '...WHERE name=%(name)s'