php – PDO PostgreSQL绑定错误

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – PDO PostgreSQL绑定错误脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我发现当我尝试使用params运行更新查询时,我收到错误

也许那是因为目标字段的类型(字符变化),一切都可以正常使用文本列类型.但我不想因此而改变列类型.然后我被告知我应该直接传递params(使用bindValue或bindParam,确定每个值的类型),而不是发送params数组来执行方法.

但是当我这样做时,我会收到错误

测试代码

$Stmt = $DB->PRepare("SELECT * From test_table WHERE test_field=:test_field");
$Stmt->bindValue(':test_field','test',PDO::PARAM_STR);
$Stmt->execute();
var_dump($DB->errorInfo());

因此,据了解,绑定根本不起作用.或者我做错了.
但也许有办法解决它?

我正在使用Postgresql 9.2.3,libpq 8.4.16运行PHP 5.4.12.

解决方法

好吧,似乎唯一的解决方案是将所有文本值转换为文本,如下所示:

update test_table set test_field = :test_field::text

否则会出现有关不一致类型的错误.

脚本宝典总结

以上是脚本宝典为你收集整理的php – PDO PostgreSQL绑定错误全部内容,希望文章能够帮你解决php – PDO PostgreSQL绑定错误所遇到的问题。

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

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