0

我将返回 MySQL 查询的结果。但他返回了 MySQL 查询。

public function getLatestId() {
        $db = Zend_Db_Table::getDefaultAdapter();
        $db->getConnection();
        $result = $db->select()->from("raw_data", array(new Zend_Db_Expr("MAX(id) AS locationname")));
        return $result;
    }
4

2 回答 2

0

$result选择查询语句不是您获取结果所需的结果。尝试以下几行:

$result = $db->select()->from("raw_data", array(new Zend_Db_Expr("MAX(id) AS locationname")));
$row = $this->fetchRow($result);
return $row->toArray();

我正在使用以下函数来获取最大 id 作为 maxItemNumber

function getLatestId(){
    $select = $this->select()
        ->from('raw_data', array(new Zend_Db_Expr("MAX(id) AS maxItemNumber")));

    $row = $this->fetchRow($select);
    if(!$row){
        return 0;
    }

    $row = $rows->toArray();
    return $row['maxItemNumber'];
}

如果您想在插入后立即获取 lastInsertedID,则使用 return 和 insert

return $this->insert($data);
于 2013-11-12T09:24:45.317 回答
0

这是因为您正在构建和下一个返回查询......但不执行此查询。Harish Singh 明确地表明了这一点。

于 2013-11-12T10:15:32.793 回答