首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >zf2 -使用Zend\Db\TableGateway\TableGateway进行连接;

zf2 -使用Zend\Db\TableGateway\TableGateway进行连接;
EN

Stack Overflow用户
提问于 2013-02-04 08:21:41
回答 2查看 2.7K关注 0票数 0

我想使用zf2从第一个和第二个表中选择字段来执行一个简单的连接,但是当我试图将一个字段数组放入columns方法中时,我得到了一个错误(“Statement not be executed”)。

代码语言:javascript
复制
public function fetchAll()
{
    $resultSet = $this->tableGateway->select(function (Select $select) {
        $select->columns();// ->with params gives an 'Statement could not be executed'
        $select->join(array('t2' => 'categories'), 'table1.idCategory = t2.id');
        $select->order('dateTime DESC')->limit(100);
    });  
...
}
EN

回答 2

Stack Overflow用户

发布于 2013-02-08 17:31:51

您需要确保dateTime/id字段位于您提供的列列表中。

如果您转储异常($e->getTraceAsString()),您将获得有关错误原因的更多信息。

票数 0
EN

Stack Overflow用户

发布于 2013-04-19 18:11:48

注释此语句在数组中添加至少一个有效的'column‘名称(表列/字段名)。

代码语言:javascript
复制
$select->columns(array('column_one', 'column_two', 'column_N'));

空白的$select->columns();语句会生成类似于SELECT FROM table_name的查询,这会导致错误。

当您注释此语句时,它会生成类似于SELECT * FROM table_name的sql查询,如果您传递列名,星号将被它们替换。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14678939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档