Show
Ignore:
Timestamp:
10/02/08 18:12:10 (3 months ago)
Author:
nowelium
Message:

mysql の procedure サポートは終わり。
General error: 2014 Cannot execute queries while other unbuffered queries are active. とかは、PDOのPDO::MYSQL_ATTR_USE_BUFFERED_QUERY をいくら設定してもダメなので、少し逃げ。一端切断すればなんとかなるけど、Datasource設定とかは管理外なので、やらない。
multi rows は 2次元配列で。

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/php/misc/Hermit/src/Hermit/statement/HermitProcedureStatementBuilder.php

    r20417 r20492  
    55 */ 
    66class HermitProcedureStatementBuilder extends HermitStatementBuilder { 
    7     private $method; 
    8     private $annote; 
    9     private $sqlCreator; 
     7    protected $method; 
     8    protected $annote; 
     9    protected $sqlCreator; 
    1010 
    1111    protected static $procedureParameters = array( 
     
    1414 
    1515    public function __construct(ReflectionMethod $method, HermitAnnote $annote, HermitSqlCreator $sqlCreator){ 
     16        parent::__construct($method, $sqlCreator); 
    1617        $this->method = $method; 
    1718        $this->annote = $annote; 
     
    3435            $parameter = new HermitProcedureParameter($info, $dbms); 
    3536        } 
    36         $sql = $this->sqlCreator->createSql($pdo); 
    37         $sql = self::preparedSql($parameter, $sql); 
    38         return new HermitStatement($parameter, $pdo->prepare($sql)); 
     37         
     38        $sql = self::preparedSql($parameter, $this->sqlCreator->createSql()); 
     39        return new HermitDefaultStatement($parameter, $pdo->prepare($sql)); 
    3940    } 
    4041