注册

PHP-8.0,PDO具名参数提示“-70039”绑定的参数个数不正确

Niux 2025/04/16 251 2

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm8_20250117_HWarm920_kylin10_sp1_64
【操作系统】:kylin10_sp1
【CPU】:鲲鹏ARM64
【问题描述】*:
为了支持多样的数据库后端,我们在开发数据库接口时采用了PHP PDO特性。据PHP文档介绍,如果数据库后端不支持基于名字的参数,PDO在某些情况下会将具名参数转化为顺序参数传入PDO后端。但我们在实际运行中发现,上述版本的组合会在使用具名参数时报错,即“-70039 绑定的参数个数不正确”。

以下是相关SQL语句:及参数:
SELECT Client, Project, NameKey, SortKey, Content FROM Table_Client WHERE (Client = :client OR :client IS NULL) AND (Project = :project OR :project IS NULL) AND (NameKey = :namekey OR :namekey IS NULL) AND (SortKey >= :sortkey_begin OR :sortkey_begin IS NULL) AND (SortKey <= :sortkey_end OR :sortkey_end IS NULL) ORDER BY SortKey DESC, Project DESC, Client DESC;

及参数:
array(5) { [":client"]=> NULL [":project"]=> NULL [":namekey"]=> NULL [":sortkey_begin"]=> NULL [":sortkey_end"]=> NULL }

所有字段皆为VARCHAR。

回答 0
暂无回答
扫一扫
联系客服