phpにてCSVのデータをEC2内のphpmyadminにインサートしているのですが、今回入れようとしている値のカラムがきちんとインサートされず、また一部のインサートに成功したデータに呼応して0と言うidが生成されます。
他のデータはこのように勝手に0と言うidを生成せずにインサートできたので、気になりご質問させて頂きました。
よろしくお願いします。
<?php $pdo = new PDO( 'mysql:host=*******, '******', '******', [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, ] ); $file = new SplFileObject('/home/ec2-user/node_type.csv'); $file->setFlags(SplFileObject::READ_CSV|SplFileObject::SKIP_EMPTY|SplFileObject::READ_AHEAD); $file->seek(1); $insert_array = []; foreach($file as $line) { $insert_array[] = [ 'node_type' => $line[0] ]; } var_dump($insert_array) $pdo->beginTransaction(); foreach($insert_array as $insert_arrays); { $stmt = $pdo->prepare("INSERT INTO users (type) VALUES (:node_type)"); $stmt->bindValue(':node_type', $insert_arrays['node_type'], PDO::PARAM_STR); $stmt->execute(); } $pdo->commit(); ?> コード
var_dump($insert_array)の一部 [1962]=> array(1) { ["node_type"]=> string(24) "インテントノード" } [1963]=> array(1) { ["node_type"]=> string(18) "ボットノード" } [1964]=> array(1) { ["node_type"]=> string(18) "ボットノード" コード
回答1件
あなたの回答
tips
プレビュー