sql >> Database teknologi >  >> RDS >> Mysql

Understøtter Python MySQL-forberedte erklæringer?

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'


  1. Kommandohistorie i isql

  2. Hvordan kan jeg kombinere flere rækker til en kommasepareret liste i Oracle?

  3. Sådan vises alle visninger i Oracle-databasen

  4. Oprettelse af en postgresql DB ved hjælp af psycopg2