Aula 09 - Instruções preparadas e otimização de consultas do Mysql - Programação Web

Embed Size (px)

Citation preview

  • 1.
    • Programao Web Fatec Ipiranga Anlise e Desenvolvimento de Sistemas Aula 09 Instrues preparadas e otimizando o tratamento de consultas no MySQL
    • Dalton Martins
    • [email_address]
    • So Paulo, Outubro, 2011

2. Trabalhando com instrues preparadas

  • Uma tarefa comum executarmos uma consulta a um BD de forma repetitiva, apenas alterando os parmetros;

3. Fazer isso da forma convencional, ou seja, utilizando os comandos de consulta dentro de loops pode gerar sobrecarga de acesso ao BD; 4. Na verso 4.1, o MySQL implementou a possibilidade de utilizarmos instrues preparadas que realizam essas tarefas a um custo menor de processamento. 5. H dois tipos de instrues preparadas:

  • Associao de parmetros:permitir armazenar uma consulta no BD com apenas os dados que mudarem sendo enviados repetidamente e integrados na consulta para execuo. Ex.: insero repetitiva de produtos num BD;

6. Associao de resultados:permitir o uso de arrays para puxar valores dos resultados de consultas associando variveis PHP aos campos. 7. Preparando a instruo 8. Executando a instruo preparada

  • A forma de execuo de uma instruo preparada vai depender se ela vai operar por associao de parmetros ou de resultados.
  • Associao de parmetros: depois dos parmetros serem associados com o mtodobind_param()a instruo executada;

9. Associao de resultados: a instruo ser executada antes de associar os resultados as variveis com o mtodobind_result(); 10. Em ambos os casos, a instruo preparada executada com o mtodoexecute(). 11. Associando parmetros 12. Associando variveis 13. Outros mtodos de apoio

    • affected_rows(): retorna o nmero de linhas afetadas pela ltima instruo especificada no objeto stmt;
  • 14. num_rows(): retorna o nmero de linhas recuperadas pela ltima instruo especificada pelo objeto stmt;