본문 바로가기
MySql

MySQL PDO 다중 쿼리

by 베이스 공부 2021. 2. 6.
반응형

PHP 버전 5.3부터 PDO_MYSQL 드라이버가 PDO_MYSQLND 를 위해 보충되었습니다. 여러 쿼리에 대한 지원을 도입했습니다.

하지만 둘 이상의 SELECT 쿼리가 전달 된 경우 두 결과 집합을 모두 얻는 방법을 알아낼 수 없습니다. 두 쿼리가 모두 실행되었습니다. 두 번째 쿼리가 방금 덤프되었을 수는 없습니다.

$db->query("SELECT 1; SELECT 2;")->fetchAll(PDO::FETCH_ASSOC);

보고:

array(1) {
  [0]=>
  array(1) {
    [1]=>
    string(1) "1"
  }
}

 

해결 방법

 

PDOStatement :: nextRowset 을 사용해야합니다.

$stmt   = $db->query("SELECT 1; SELECT 2;");
$stmt->nextRowset();
var_dump( $stmt->fetchAll(PDO::FETCH_ASSOC) );

두 번째 쿼리에 대한 결과가 반환됩니다.


 

참조 페이지 https://stackoverflow.com/questions/11271595

 

 

반응형

댓글