从Laravel 5.3中的SQL Server获取多个结果集

时间:2018-02-21 13:00:05

标签: php sql sql-server laravel laravel-5

这是代码     $ exec =" EXEC RPT_TEST_2resultSet&#34 ;;     $ resultSet = \ DB :: select($ exec);

SP返回3个结果集。但是在php中它只打印第一组结果集。如何获取另外两组结果集?试过别人建议的解决方案。得到了一些其他错误。

2 个答案:

答案 0 :(得分:0)

做一个foreach

检查示例:

foreach ($resultSet as $result) {
   echo $result['someDataFromResult'];
}

这将重复$ resultSet数组中的数据量

答案 1 :(得分:0)

找到解决此问题的简单方法。

$pdo = \DB::connection()->getPdo();
$sql = 'EXEC Test_SP_MultiResultSet';
$stmt = $pdo->query($sql);
do {
   $rows = $stmt->fetchAll(\PDO::FETCH_NUM); // Keys will be start from zero , one, two
   $rows = $stmt->fetchAll(\PDO::FETCH_ASSOC); // Column names will be assigned for each value

   if ($rows) {
    $sheetData[] = $rows;
   }
} while ($stmt->nextRowset());

Source Link