PHP PDO准备查询

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了PHP PDO准备查询脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
在PDO上阅读并在StackOverFlow上搜索了关于pdo和PRepare语句的内容.我想知道什么是好处或使用准备声明.例如:
$sql = 'SELECT name,colour,calories From fruIT WHERE calories < :calories AND colour = :colour';
$sth = $dbh->prepare($sql,array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
$sth->execute(array(':calories' => 150,':colour' => 'red'));
$red = $sth->fetchAll();

VS

$sql = "SELECT name,calories From fruit WHERE calories < $calories AND colour = $colour";
$result = $connection->query($query);
$row = $result->fetch(PDO::FETCH_ASSOC);

两个查询都将返回相同的结果,所以为什么使用准备,对我来说看起来它会慢,因为你必须执行额外的步骤.

谢谢

准备好的陈述是:

>更安全:PDO或底层数据库库将负责为您转义绑定变量.如果始终使用预准备语句,则永远不会容易受到sql注入攻击.
>(有时)更快:许多数据库将缓存预准备语句的查询计划,并通过符号引用预准备语句,而不是重新传输整个查询文本.如果您只准备一次语句然后重复使用带有不同变量的预准备语句对象,则这一点最为明显.

在这两个中,#1更为重要,并使准备好的陈述不可或缺!如果你没有使用准备好的语句,唯一明智的做法就是在软件中重新实现这个功能. (当我被迫使用MysqL驱动程序并且无法使用PDO时,我已多次这样做了.)

脚本宝典总结

以上是脚本宝典为你收集整理的PHP PDO准备查询全部内容,希望文章能够帮你解决PHP PDO准备查询所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。