注册

PHP的PDO查询列[and]附近出现错误,命令行查询没问题

Viteri 2023/10/15 626 2

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:8
【操作系统】:centos 8
【CPU】:Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz
【问题描述】*:
PHP 是7.3.33非线程安全,使用PDO_DM驱动。
数据库初始化时已使用 参数 case_sensitive=n 大小写不敏感
兼容mysql模式:sp_set_para_value(2,'COMPATIBLE_MODE',4);

在PHP代码里查询会报错

[2023-10-15 13:17:25]
SQLSTATE[HY000]: General error: -2007 第 1 行, 第 98 列[AND]附近出现错误: 
语法分析出错 (dpi_prepare[4294965289] at /home/test/yx/trunk/dm_php//pdo7/dm_driver.c:404) In File /data/wwwroot/default/inc/dm.class.php Line:71
SQL语句: SELECT COUNT(1) AS CC FROM p8_config WHERE system=:system and module=:module and type=:type and k=:k
#0 /data/wwwroot/default/inc/dm.class.php(71): PDO->prepare('SELECT COUNT(1)...')
#1 /data/wwwroot/default/inc/dm.class.php(324): p8_dm->execute('SELECT COUNT(1)...', Array)

在disql是可以正常查询的

disql V8
SQL> SELECT COUNT(1) AS CC FROM p8_config WHERE system='core' and module='' and type='serialize' and k='modules';

LINEID     CC                  
---------- --------------------
1          1

used time: 1.061(ms). Execute id is 6800.
SQL> 

怀疑PDO_DM不支持 system=:system and module=:module 这种PDO式语法的SQL,不知为什么

帮忙看看是什么问题

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