

初めて投稿致します。

プログミングを初めてまだ3ヶ月弱のため、質問仕方等に至らない点等御座いますが、  
何卒宜しくお願い致します。

* * *

## 実現したいこと

LOAD DATA LOCAL INFILEを用いて、phpからcsvをデータベースにインサートしたい

* * *

## 問題点

下記、コードで実行すると、エラーが発生する

[code]

            try{
    
          $this->_kpi_pdo =new PDO(DSN, DB_USERNAME, DB_PASSWORD);
          $this->_kpi_pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
          $this->_kpi_pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
          $this->_kpi_pdo->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES UTF8");
          $this->_kpi_pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);
          $this->_kpi_pdo->setAttribute(PDO::MYSQL_ATTR_LOCAL_INFILE, true);
    
    
        }catch(PDOException $Exception){
    
          die('エラー:'.$Exception->getMessage());
    
        }
    
    
    
    try{
    
          $sql = "LOAD DATA LOCAL INFILE"." '".DOWNLOAD_FILE_PATH.”ファイル名.csv"."'"." INTO TABLE order_sales_aggregate FIELDS TERMINATED BY ',' ";
          $stmt = $this->_pdo->prepare($sql);
          $stmt->execute();
    
        }catch(PDOException $Exception){
    
        die('エラー:'.$Exception->getMessage());
    
        }
    
[/code]

<エラー>

SQLSTATE[HY000]: General error: 2014 Cannot execute queries while other
unbuffered queries are active. Consider using PDOStatement::fetchAll().
Alternatively, if your code is only ever going to run against mysql, you may
enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY
attribute.

* * *

色々なサイトを見て試して見ましたが、改善することができません。

ご検討のほど何卒宜しくお願い致します。


CC BY-SA 3.0
2017-02-07T10:18:59.237
32458
2017-02-07T10:55:41.523
2017-02-07T10:55:41.523
5793
20547
question
php mysql
LOAD DATA LOCAL INFILEでcsvをデータベースにインサートできない