1

我想从我的数据库中获取一个值。因此我使用以下代码:

$qb->select('u.userId')
   ->from('user', 'u')
   ->orderBy('u.id', 'DESC')
   ->setMaxResults(1);
$query = $qb->getQuery();
$result = $query->getSingleResult();

如果该表中至少有一行,则代码可以正常工作。但如果表为空,则会引发异常。我怎样才能拦截这个异常?

我尝试了类似的东西if($result->isEmpty()$result === null或者empty($result)但我的异常似乎是在第 1 行抛出的。3 上面的例子中,所以我以后不能拦截它。

4

1 回答 1

1

这应该有效。

IF EXISTS(<query>)
  SELECT 'not empty'
ELSE
  SELECT 'empty'
于 2013-08-05T07:38:28.157 回答