3

単一の「複数挿入」クエリ (PHP の PDO ドライバー) を使用して、多くの行 (400-2500) をテーブルにプッシュしようとしています。

今、私はこのエラーを受け取ります:

致命的なエラー: メッセージ「SQLSTATE[22003]: 範囲外の数値: 1264 行 1 の列 'customer_id' の範囲外の値」を伴うキャッチされない例外 'PDOException'

しかし、私が見る限り1264、特に column ではなく、 value を挿入しようとする場所はありませんcustomer_id。また、?準備されたクエリの s の量は、呼び出しに渡す配列内のアイテムの量と一致しexecute()ます。

if ((!in_array(true, $this->issuesCallsErrors)) && (substr_count($this->sql, '?') === count($this->issues))) {
    var_dump(substr_count($this->sql, '?')); //int: 3600
    var_dump(count($this->issues));          //int: 3600
    echo $this->sql;
    print_r($this->issues);

    $query = DBCon::getCon()->query('TRUNCATE TABLE `issue`');
    $query = DBCon::getCon()->prepare($this->sql);
    $query->execute($this->issues);

    ...

}

編集:いくつかの余分な情報

に挿入しようとした最大値customer_idは です193。私が間違っていなければcustomer_idsmallint(5), unsigned最大値を許可しています。65535

4

2 に答える 2