1

我喜欢在 Zend 中的 Where 子句和 Order 中使用一个列:

$select = $this->select();
$select = $select->where('year = ?', $year)
                 ->where('order != ?', 0)
                 ->order('order');
$rows = $this->fetchAll($select);

但是当我这样做时,我收到以下错误:

SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以order在第 1 行的 'order != 0) ORDER BY ASC'附近使用正确的语法

为什么??!

4

1 回答 1

3

您必须将列名order放入刻度,因为它是 SQL 语法的保留字。最好不要将列命名为 SQL 中的关键字,因此请将列重命名order为其他名称。

于 2013-02-28T22:34:44.653 回答