Qual a diferença entre execute e query no pdo?
23/05/2017
0
Olá pessoal, tudo bem?
Estou usando o pdo nos meus projetos e fiquei com uma dúvida quanto a dois métodos do mesmo.
Ao utilizar tanto os métodos execute como o query, percebi que os dois fazem as transações solicitadas no banco de dados.
Queria entender qual a diferença entre eles (se existe) e quando devo usar um ou outro.
Obrigado!
Estou usando o pdo nos meus projetos e fiquei com uma dúvida quanto a dois métodos do mesmo.
Ao utilizar tanto os métodos execute como o query, percebi que os dois fazem as transações solicitadas no banco de dados.
Queria entender qual a diferença entre eles (se existe) e quando devo usar um ou outro.
Obrigado!
Robson Cavalcante
Curtir tópico
+ 0
Responder
Post mais votado
25/05/2017
Olá Robson, bom dia!
Existe diferença sim, o método "query" executa um comando SQL padrão, sendo necessário tratar cada um dos valores que serão inseridos para evitar ataques sql injection.
Já o "execute" vai receber uma prepared statement como parâmetro ao invés do SQL padrão, desse modo, não será necessário tratar os valores pois os dados estarão separados da query e serão associados ao statement através de um bind.
ex:
espero ter ajudado.
um abraço
Existe diferença sim, o método "query" executa um comando SQL padrão, sendo necessário tratar cada um dos valores que serão inseridos para evitar ataques sql injection.
Já o "execute" vai receber uma prepared statement como parâmetro ao invés do SQL padrão, desse modo, não será necessário tratar os valores pois os dados estarão separados da query e serão associados ao statement através de um bind.
ex:
$statement = $database->prepare('SELECT nome FROM user WHERE id = :idusuario'); $statement->bindParam(':idusuario', $idusuario); $statement->execute();
espero ter ajudado.
um abraço
Eduardo Chaves
Responder
Mais Posts
Clique aqui para fazer login e interagir na Comunidade :)