Você está na página 1de 2

INSTRUÇÕES PREPARADAS E PROCEDIMENTOS ARMAZENADOS

Muitos dos bancos de dados mais maduros suportam o conceito de


declarações preparadas. O que eles são? Eles podem ser pensados como
uma espécie de modelo compilado para o SQL que uma aplicação deseja
executar, que pode ser customizado usando parâmetros variáveis. As
declarações preparadas oferecem dois benefícios principais:

A consulta só precisa ser analisada (ou preparada) uma vez, mas pode ser
executada várias vezes com parâmetros iguais ou diferentes. Quando a
consulta estiver preparada, o banco de dados irá analisar, compilar e
otimizar seu plano de execução da consulta. Para consultas complexas, esse
processo pode levar tempo suficiente para tornar o aplicativo visivelmente
mais lento se houver necessidade de repetir a mesma consulta muitas vezes
com parâmetros diferentes. Ao usar uma instrução preparada, o aplicativo
evita repetir o ciclo de análise/compilação/otimização. Isto significa que as
instruções preparadas utilizam menos recursos e, portanto, são executadas
mais rapidamente.
Os parâmetros das instruções preparadas não precisam ser citados; o driver
lida com isso automaticamente. Se um aplicativo usar exclusivamente
instruções preparadas, o desenvolvedor poderá ter certeza de que nenhuma
injeção de SQL ocorrerá (no entanto, se outras partes da consulta estiverem
sendo construídas com entrada sem escape, a injeção de SQL ainda será
possível).
As instruções preparadas são tão úteis que são o único recurso que o PDO
irá emular para drivers que não as suportam. Isto garante que um aplicativo
será capaz de usar o mesmo paradigma de acesso a dados,
independentemente dos recursos do banco de dados.

Exemplo #1 Inserções repetidas usando instruções preparadas

Este exemplo executa uma consulta INSERT substituindo um nome e um


valor pelos espaços reservados nomeados.

Você também pode gostar