我想从我的typo3扩展中获取一些数据库表.扩展基于extbase.
查询始终只返回数据,但数据存在
我试过这个:
$query = $this->createQuery();
$query->statement('SELECT * FROM `my_table`
WHERE field = ? ORDER BY date DESC LIMIT 1',
array($condition));
$results = $query->execute();
Run Code Online (Sandbox Code Playgroud)
还有这个:
$query = $this->createQuery();
$query->matching($query->equals('field', $condition));
$query->setOrderings(array('date' => Tx_Extbase_Persistence_QueryInterface::ORDER_DESCENDING));
$query->setLimit(1);
$results = $query->execute();
Run Code Online (Sandbox Code Playgroud)
两者都返回null作为结果.
是否有可能获得该类创建的sql来查找bug的位置?
我查看了一些extbase持久化类,但没有找到线索
编辑:对于那些感兴趣的人..我找到了一个"解决方案".
如果使用statement()方法创建查询,则可以使用此函数打印查询
echo $query->getStatement()->getStatement();
Run Code Online (Sandbox Code Playgroud)
它不会取代占位符.但是你可以用这种方法得到变量
var_dump($query->getStatement()->getBoundVariables());
Run Code Online (Sandbox Code Playgroud)
这是我找到的最佳解决方案,无需编辑extbase扩展