sql_interp.

Interpolate variáveis python em instruções SQL.
Baixe Agora

sql_interp. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • MIT/X Consortium Lic...
  • Preço:
  • FREE
  • Nome do editor:
  • Michael Hampton
  • Site do editor:
  • http://bitbucket.org/mirhampt/

sql_interp. Tag


sql_interp. Descrição

Interpolate variáveis python em instruções SQL. SQL_INTERP permite interpolar com segurança e facilmente as variáveis Python em SQL com base no contexto. A maior parte da sua interação com este pacote será através da classe SQLinterp: >>> do sql_interp Import Sqlinterp >>> pessoa = {'Last_name': 'Doe'} >>> critérios = {'first_name': } # Crie uma instância de SQLinterp e use o método Interp para obter as variáveis SQL e BIND # prontos para passar para o cursor do seu banco de dados. >>> sqli = sqlinterp () >>> sqli.interp ("Atualizar pessoas Definir ", pessoa", onde ", critérios) ('atualizar as pessoas Set Last_Name =? As variáveis foram passadas para a Interp precisam ser tratadas como variáveis de ligação. Isso significa que quaisquer argumentos aprovados que são strings serão tratados como SQL bruto. Se você não tiver cuidado, isso pode levar a um ataque de injeção SQL. Para evitar isso, se houver alguma chance de qualquer uma variável é uma string, você deve dizer sql_interp que não é sql bruto. Você pode fazer isso com o método ESC do objeto SQLinterp.Aqui é um exemplo: >>> sqli = sqlinterp () >>> first_name = 'John' # O seguinte é errado! Isso pode levar a um ataque de injeção SQL. >>> sqli.interp ("SELECT * da tabela onde First_Name =", First_name) ('Select * da tabela onde First_name = John', ()) # Esta é a maneira correta. >>> sqli.interp ("Selecionar * da tabela onde first_name =", sqli.esc (first_name) ('Selecione * da tabela onde First_Name =?', ('John',)) Isso não se aplica se a string é um valor em uma lista ou dicionário como nos outros exemplos nesta documentação.Explesthe O objeto Sqlinterp pode lidar com interpolação de muitos tipos diferentes: >>> Idade = 25 >>> First_names = >>> sqli.interp ("Atualizar as pessoas ajustadas por idade =", idade ", onde First_names em", First_names) ('Atualizar as pessoas ajustadas por idade =? Onde primeiro_names em (?)', (25, Jenny ',' John ',' Jeremy ')) A interpolação é sensível ao contexto, portanto, o mesmo tipo será interpretado em SQL corretamente para o uso: >>> punk_rockers = {' cabelo ':' rosa ',' tatuagens ':' Três '} >>> Acessórios = {' Piercings ': 6,' Calças ':' vinil '} >>> sqli.interp ("Atualizar pessoas Set", ACC Essório, "onde", punk_rockers) ('atualizar pessoas definir calças =?, piercings =? Onde cabelo =? E tatuagens =? ', (' Vinil ', 6,' rosa ',' três ')) reconhecimentos que o projeto é um porto indireto do SQL do Perl :: Interp. Requisitos: · Pitão


sql_interp. Software Relacionado