Php Laravel 4.2查询错误-当其他未缓冲查询处于活动状态时,无法执行查询

Php Laravel 4.2查询错误-当其他未缓冲查询处于活动状态时,无法执行查询,php,mysql,laravel,laravel-4,pdo,Php,Mysql,Laravel,Laravel 4,Pdo,因此,使用Laravel4.2,我试图在一个包含600000条记录的大型数据库上运行一个查询。执行此操作时,我得到以下错误: SQLSTATE[HY000]:一般错误:当其他未缓冲查询处于活动状态时,2014无法执行查询。考虑使用pdoCalp::FutAccess()。或者,如果您的代码只在mysql上运行,您可以通过设置PDO::mysql_ATTR_USE_BUFFERED_query属性来启用查询缓冲。(SQL:从'UserLog'中选择'username','timestamp','i

因此,使用Laravel4.2,我试图在一个包含600000条记录的大型数据库上运行一个查询。执行此操作时,我得到以下错误:

SQLSTATE[HY000]:一般错误:当其他未缓冲查询处于活动状态时,2014无法执行查询。考虑使用pdoCalp::FutAccess()。或者,如果您的代码只在mysql上运行,您可以通过设置PDO::mysql_ATTR_USE_BUFFERED_query属性来启用查询缓冲。(SQL:从'UserLog'中选择'username','timestamp','ip','appID',其中'id'>1179525)

这是我的密码:

public static function getUserLogData()
{
    $getUsers = DB::connection('PORTAL2')->table('UserLog')
                                         ->select('username', 'timestamp', 'ip', 'appID')
                                         ->where('id', '>', '1179525')
                                         ->get();

    $numOfRowsReturned = count($getUsers);

    if($numOfRowsReturned>0)
    {
        return $getUsers;
    }
    return 0;
}
为了解释这个神奇的数字1179525,我使用ID尝试只选择10行,因为1179525之后只有10行ID

当代码如下所示时,查询工作正常(尽管我希望选择~500行,而不是1行):

有关如何解决此问题的任何想法?

请使用
->take(10)
或任何数字来指定返回行数的限制,而不要使用
->get()
->first()
实际上是
->take(1)

另外,使用

`if (!empty($getUsers))` 
对于大型数据集,它将更加高效,并且能够完成您想要做的事情。count()将遍历数组,empty()将仅检查它是否为null或长度为0。

read
`if (!empty($getUsers))`