2010-09-02 40 views
1

我正在使用Zend_Db和Pdo_Mysql驱动程序。此查询不给出任何结果:Zend_Db:准备好的语句没有处理参数

$s = $db->prepare('SELECT ET.id 
        FROM elementTypes AS ET, language AS L1 
        WHERE L1.strId = ET.dispName AND L1.language = ?'); 
$s->execute(array(2));           
pr($s->fetchAll()); 

如果我硬编码参数,返回预期行。

这是怎么回事?

编辑:下面是用更简单的查询一个精简的脚本:http://pastebin.com/84UtcGGZ

Eidt 2:我有进一步下跌钻探,发现问题在于PDO与整数比较ENUMS。看到这个问题:PDO cannot compare mysql ENUM using integers in prepared statements 如果你知道任何修补程序/解决方法如何让这个工作在Zend_Db上,请发表! :)**

回答