php – PDO-> query()和PDO-> exec()之间的差异

前端之家收集整理的这篇文章主要介绍了php – PDO-> query()和PDO-> exec()之间的差异前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
让PDO引用PDO对象而不是PDO本身 –

我看到here有两个PDO-> query()和PDO-> exec().在链接页面中,看起来PDO-> query();仅用于SELECT语句,PDO-> exec()用于UPDATE,INSERT,DELETE语句.现在,我对PDO来说是全新的,所以我不知道在使用方面还有什么变化,所以我很欣赏一下为什么要使用不同的方法,为什么有不同的方法.

尽管有什么理论上的差异,但是这些功能都不应该被使用 – 所以没有什么可担心的.

使用PDO的唯一原因是对准备语句的支持,但这些功能都没有提供.所以不应该使用它们.

请改用prepare()/ execute(),特别是UPDATE,DELETE语句.

请注意,尽管准备好的声明被广泛宣传为安全措施,但只能吸引人们的注意.但它们的真正目的是正确的查询格式.这也给你安全 – 正确的格式化查询不能被注入 – 就像副作用一样.但再次 – 格式化是一个主要目标,只是因为即使无辜的数据可能会导致查询错误(如果格式不正确).

编辑:
请注意,execute()仅返回TRUE或FALSE以指示操作成功.对于其他信息,例如受UPDATE影响的记录数量,则提供诸如rowCount()之类的方法.见docs.

猜你在找的PHP相关文章