Laravel и MemSQL хранилище столбцов, небуферизованные запросы активны

В настоящее время я работаю с MemSQL Columnstore и пытаюсь интегрировать его с Laravel 5, но каждый раз, когда я пытался сделать запрос, я получал следующую ошибку

SQLSTATE [HY000]: общая ошибка: 2014. Невозможно выполнить запросы, когда другие небуферизованные запросы активны. Рассмотрите возможность использования PDOStatement :: fetchAll ().

Я искал и нашел это:

Не использовать подготовленные заявления в Laravel Eloquent ORM?

И пытался сделать это так, но не работает. Вот мой запрос

 public function index(){
$sql = 'SELECT * FROM SCORE LIMIT 20';
$pdo = DB::getPdo();
$query = $pdo->query($sql);
$result = $query->fetchAll();

return view('home', compact('result'));
}

Любое руководство будет высоко ценится.

0

Решение

У меня была такая же проблема.

Согласно документации MemSQL, вам необходимо настроить клиентский драйвер: https://docs.memsql.com/concepts/v6.0/prepared-statements/

В файле database.php добавьте новый ключ параметров.

Вот моя конфигурация, она почти такая же, как по умолчанию, обратите внимание на клавишу опций.

'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'strict' => true,
'engine' => null,
'options' => array(
PDO::ATTR_EMULATE_PREPARES => TRUE
),
],
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]