Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

O Python suporta instruções preparadas pelo MySQL?


A maioria das linguagens fornece uma maneira de fazer instruções parametrizadas genéricas, o Python não é diferente. Quando uma consulta parametrizada é usada, os bancos de dados que suportam a preparação de instruções o farão automaticamente.

Em python, uma consulta parametrizada se parece com isso:
cursor.execute("SELECT FROM tablename WHERE fieldname = %s", [value])

O estilo específico de parametrização pode ser diferente dependendo do seu driver, você pode importar seu módulo db e então fazer um print yourmodule.paramstyle .

De PEP-249 :

estilo de parâmetro
       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'