我正在尝试按照教程https://framework.zend.com/manual/2.4/en/user-guide/database-and-models.html
我有问题,我不能使用getAlbum(1)函数。
可以fetchAll()
- >返回所有行
如果我想使用getAlbum($personalnummer)
- >找不到第1行
是的,数据库中有一个Personalnummer 1的条目,它是int类型。唯一的区别是,我使用的是Microsoft SQL Server,但配置正确,因为可以返回所有行。
有什么想法吗?
public function fetchAll()
{
$resultSet = $this->tableGateway->select();
return $resultSet;
}
public function getAlbum($personalnummer)
{
$personalnummer = (int) $personalnummer;
$rowset = $this->tableGateway->select(array('Personalnummer' => $personalnummer));
$row = $rowset->current();
if (!$row) {
throw new \Exception("Could not find row $personalnummer");
}
return $row;
}
答案 0 :(得分:0)
尝试此操作,如果它有助于替换
$rowset = $this->tableGateway->select(array('Personalnummer' => $personalnummer));
用这个
$where = new \Zend\Db\Sql\Where();
$where->equalTo('Personalnummer', $personalnummer);
$rowset = $this->tableGateway->select($where)