私はループを介して挿入していますが、残念ながらデータの一部しか挿入せず、いくつかを無視しているようです。Insertを使ったループ - PHP Postgresの挿入
私はファイルの内容を読み、PHPを使用してそれらをpostgresデータベースに挿入しています。
以下のコードを参照してください。
$source='/Users/gsarfo/AVEC_ETL/TCCDec052016OSU.DAT';
$lines=file($source);
$len =sizeof($lines);
$connec = new PDO("pgsql:host=$dbhost;dbname=$dbname", $dbuser, $dbpwd);
$ins=$connec->query('truncate table tbl_naaccr_staging');
try {
for ($x = 0; $x < $len; $x++) {
$a1=substr($lines[$x],146,9);
$a2=substr($lines[$x],2182,9);
$a3=substr($lines[$x],192,3);
$connec->beginTransaction();
$sql2=$connec->prepare("INSERT INTO tbl_naaccr_staging
(addr,name, email) VALUES (?, ?, ?");
$sql2->execute(array($a1, $a2, $a3));
$connec->commit();
}
$res=$connec->query($sql) ;
}
catch (PDOException $e) {
echo "Error : " . $e->getMessage() . "<br/>";
die();
}
if ($sql2)
{echo 'success';}
?>
すべてのことに空白を挿入する前に、文字列を一掃助けたように、文字列内のエスケープ文字が挿入されることにしました – RiggsFolly