まず、春節前の北京からのご挨拶「過ぎ年好!」。
データベースにデータ ファイルをロードするための perl スクリプトがあります。スクリプトは正常に実行されますが、返される情報は常に正しくありません。
問題:
コードは次のようになります。
$sql_load="LOAD DATA LOCAL INFILE $FileName REPLACE INTO TABLE ".$TableName ;
$sth=$dbi->do($sql_load) ;#or die "SQL Error: $DBI::errstr\n";
if(DBI->err){
print " after connect, SQL Error:$DBI::errstr\n";
}else{
print " $sth . Records Uploaded \n";
}
出力は次のようになります。
7 . Records Uploaded.
しかし実際には:
wc -l $FileName は 6 (フィールド名行である最初の行を含む) で、データ行の数は 5 です。
返されるカウント数は、常に正しい数に 2 を加えたものになります。
質問:
私はこの質問を何度もグーグル検索しましたが、うまくいきませんでした。また、mysql ドキュメントからも有益な情報を得ることができませんでした。正しいカウント数を取得するにはどうすればよいですか?プラス 2 の数は何を意味しますか?